函数
gioApplicationid_is_valid
声明 [源代码]
gboolean
g_application_id_is_valid (
const gchar* application_id
)
描述 [源代码]
检查 application_id
是否为一个有效的应用程序标识。
在调用 g_application_new()
或 g_application_set_application_id() 时,需要一个有效的 ID。
应用程序标识符遵循与 D-Bus 已知总线名称 相同的格式。为方便起见,这里重复了应用程序标识符的限制
-
应用程序标识符由 1 个或多个元素组成,元素之间用点 (
.
) 字符分隔。所有元素都必须包含至少一个字符。 -
每个元素只能包含 ASCII 字符
[A-Z][a-z][0-9]_-
,其中-
在新应用程序标识符中不建议使用。每个元素不得以数字开头。 -
应用程序标识符必须包含至少一个点 (
.
) 字符(因此至少包含两个元素)。 -
应用程序标识符不得以点 (
.
) 字符开头。 -
应用程序标识符的长度不能超过 255 个字符。
注意,连字符 (-
) 字符在应用程序标识符中是允许的,但在参照 D-Bus 的各种规范和 API,如 Flatpak 应用程序 ID、《桌面入口规范》中的 DBusActivatable 接口,以及应用程序的“主”接口和对象路径类似于其应用程序标识符和总线名称的约定中可能存在问题或不被允许。为了避免需要特殊处理的情况,建议新的应用程序标识符始终将连字符替换为下划线。
与 D-Bus 接口名称类似,应用程序标识符应以下列作者接口的反向 DNS 域名(小写)开头,应用程序标识符的其余部分应为合并在一起的单词,首字母大写。
与 D-Bus 接口名称类似,如果作者的反向 DNS 域名包含连字符/减号,应将其替换为下划线,如果包含首部数字,则应在前面添加一个下划线进行转义。例如,如果 7-zip.org 的所有者使用了一个存档应用程序的应用程序标识符,它可能被称为 org._7_zip.Archiver
。