概述
增加原生的批量申请权限方法,仅作为申请权限用,不做其他处理
/**
* 原生请求权限返回,需要回调使用此方法
*
* @param activity 申请权限的activity
* @param requestCode 请求码
* @param permissions 权限列表
* @param grantResults 权限申请结果
*/
public void onRequestPermissionsResult(Activity activity, int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
if (requestCode == RequestCode.REQUEST_PERMISSION_CODE) {
//原生的回调不为空进行判断权限是否已全部同意
if (requestCallBack != null) {
List permissionList = new ArrayList<>();
for (int i = 0; i < permissions.length; i++) {
if (grantResults[i] != PackageManager.PERMISSION_GRANTED) {
String permission = permissions[i];
//如果用户在过去拒绝了权限请求,并在权限请求系统对话框中选择了 Don't ask again 选项,此方法将返回 false。
// 如果设备规范禁止应用具有该权限,此方法也会返回 false。
//如果只是单纯拒绝了权限则会返回true
if (ActivityCompat.shouldShowRequestPermissionRationale(activity, permission)) {
permissionList.add(permission);
} else {
LogX.w(TAG, "拒绝过权限申请,并选中不再提示");
ActivityCompat.requestPermissions(activity, new String[]{permission}, RequestCode.REQUEST_PERMISSION_CODE);
}
}
}
//如果有被拒绝的权限,就是权限申请失败
if (permissionList.size() > 0) {
if (requestCallBack instanceof CallBackFail)
((CallBackFail) requestCallBack).requestFail();
return;
}
requestCallBack.requestSuccess();
}
}
}
最后
以上就是虚拟音响为你收集整理的android 相机权限什么时候申请好,相机权限申请已经被允许,但回调是被拒绝的全部内容,希望文章能够帮你解决android 相机权限什么时候申请好,相机权限申请已经被允许,但回调是被拒绝所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复