
android 申请相机权限无响应的解决方法
在 android 9 及以上版本中,首次安装或重新安装应用时,如果直接申请相机权限,可能会出现授权对话框不弹出的问题。要解决此问题,需要确保按照以下步骤进行:
-
在清单文件中声明权限:
-
声明与相机应用的交互规则:
`
` -
动态申请相机权限:
activitycompat.requestpermissions(this, new string[] {manifest.permission.camera}, test_code);
-
注意连续申请权限的顺序
确保一次性申请所有需要的权限,而不是连续申请。连续申请权限可能会导致授权对话框无法弹出。可以使用 requestpermissions 方法同时申请多个权限。
问题示例
以下代码中,在 checkpermissions 方法中连续申请存储和相机权限,导致授权对话框不弹出。
public boolean checkpermissions() {
permissioncommon.requeststoragepermissions(this.activity);
permissioncommon.requestcamerapermissions(this.activity);
// ...
}解决方案
将代码中的连续申请权限改成一次性申请,如下所示:
public boolean checkPermissions() {
String[] permissions = new string[] {...};
PermissionCommon.requestPermissions(this.activity, permissions);
// ...
}通过一次性申请所有需要的权限,可以解决首次安装或重新安装应用时授权对话框不弹出的问题。










