Sur*_*hna 0 permissions android android-studio
我需要从权限名称中找到权限组名称,如联系人、存储等。我有以下代码
public ArrayList<String> permissionGroup(ArrayList<String> permission) {
ArrayList<String>groupPermission = new ArrayList<>();
PackageManager pm = getPackageManager();
for(String entry : permission){
PermissionGroupInfo info = null;
try {
info =pm.getPermissionGroupInfo(entry,0);
} catch (PackageManager.NameNotFoundException e) {
Log.w("infoerror ", e.getStackTrace().toString());
}
if(info == null){
Log.w("infonull","error");
}
else {
String loadLabelVal = info.loadLabel(pm).toString();
Log.w("groupName ", loadLabelVal);
if (!groupPermission.contains(loadLabelVal)) {
groupPermission.add(loadLabelVal);
}
}
}
return groupPermission;
}
Run Code Online (Sandbox Code Playgroud)
这里 te 函数的输入是一个权限数组列表,需要找到相应的组。我将 pm.getPermissionGroupInfo(entry,0) 设为 null。我不知道是什么错误。请纠正我。
提前致谢。
小智 5
要获取“简称”,例如“位置”,您可以使用
PackageManager packageManager = getApplicationContext().getPackageManager();
PermissionInfo permissionInfo = packageManager.getPermissionInfo(Manifest.permission.ACCESS_FINE_LOCATION, 0);
PermissionGroupInfo permissionGroupInfo = packageManager.getPermissionGroupInfo(permissionInfo.group, 0);
Log.w("11_APP", ""+permissionGroupInfo.loadLabel(packageManager));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1652 次 |
| 最近记录: |