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

rme*_*dor 5 android android-permissions

我想在运行时查找某个权限的权限组(在用户选中提示上的“不再询问”按钮后,在 UI 中提供有关如何访问“设置”然后启用该权限的指导)。因此,我需要权限组的人类可读名称,但我拥有的只是机器可读的完全限定权限字符串 ( Manifest.permission.READ_PHONE_STATE)。有没有办法做到这一点?

Com*_*are 6

getPermissionInfo()onPackageManager返回PermissionInfo给定的权限名称。PermissionInfo有一个group包含组名称("android.permission-group.CALENDAR"又名Manifest.permission_group.CALENDAR)的字段。

getPermissionGroupInfo()onPackageManager返回PermissionGroupInfo该组名称的 a。在此基础上,调用loadLabel(),提供PackageManageras 输入,以获取权限组的人类可读名称。

  • 从 Android 10 开始,此功能不起作用。组=“android.permission-group.UNDEFINED” (7认同)