因此,随着 Android 4.3 的到来,我们可以选择性地禁用应用程序的特定权限.
这显然可能会导致应用程序失去正确运行所需的权限的问题。
当权限被撤销时,系统是否会广播一条消息,或者我如何知道我的应用程序不再拥有某个权限?理想情况下,我想通知用户关闭权限 A 将破坏应用程序中的 xyz。
没有广播,但您可以在启动(或恢复等)时自行检查权限。Context#checkCallingOrSelfPermission()为此提供了。
如果您想检查所有权限,您可以执行以下操作:
public static boolean[] getPermissionsGranted(Context context, String[] permissions){
boolean[] permissionsGranted = new boolean[permissions.length];
for(int i=0;i<permissions.length;i++){
int check = context.checkCallingOrSelfPermission(permissions[i]);
permissionsGranted[i] = (check == PackageManager.PERMISSION_GRANTED);
}
return permissionsGranted;
}
其中输入字符串是权限的名称,例如"android.permission.INTERNET"
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)