给定一个权限名称,我如何找到 PermissionGroup?

Given a permission name, how do I find the PermissionGroup?

我想在运行时查找权限组(在 UI 中提供有关如何访问设置然后启用权限的指导,在用户检查 "never ask again" 按钮)。所以我需要权限组的人类可读名称,但我所拥有的只是机器可读的完全限定权限字符串 (Manifest.permission.READ_PHONE_STATE)。有办法吗?

getPermissionInfo() on PackageManager returns a PermissionInfo 给定的权限名称。 PermissionInfo 有一个 group 字段,其中包含组名 ("android.permission-group.CALENDAR"、a.k.a。Manifest.permission_group.CALENDAR)。

getPermissionGroupInfo() on PackageManager returns a PermissionGroupInfo 该组名。在此基础上,调用 loadLabel(),提供 PackageManager 作为输入,以获取权限组的人类可读名称。