*如果一个组里的任意一个权限被允许了,这个组里的其它权限将被自动允许
个人Demo,还不完善:
// 要申请的权限
private String[] permissions = {Manifest.permission.CAMERA,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE};
// 版本判断。当手机系统大于 23 时,才有必要去判断权限是否获取
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// 检查该权限是否已经获取
int i1 = ContextCompat.checkSelfPermission(this, permissions[0]);
int i2 = ContextCompat.checkSelfPermission(this, permissions[1]);
int i3 = ContextCompat.checkSelfPermission(this, permissions[2]);
// 权限是否已经 授权 GRANTED---授权 DINIED---拒绝
if (i1 != PackageManager.PERMISSION_GRANTED ||
i2 != PackageManager.PERMISSION_GRANTED ||
i3 != PackageManager.PERMISSION_GRANTED) {
// 如果没有授予该权限,就去提示用户请求
startRequestPermission();
}
}
// 开始提交请求权限
private void startRequestPermission() {
ActivityCompat.requestPermissions(this, permissions, 321);
}