问题已解决,是连续申请权限导致的。上述代码没贴完整,问题如下: public boolean checkPermissions() { PermissionCommon.requestStoragePermissions(this.activity); PermissionCommon.requestCameraPermissions(this.activity); if (!PermissionCommon.isHasStoragePermission(this.activity)) { UiCommon.toast(this.activity, "无文件存取权限"); return false; } if (!PermissionCommon.isHasCameraPermission(this.activity)) { UiCommon.toast(this.activity, "无相机权限"); return false; } return true; } 将权限合成一下一次性申请就可以了。 public boolean checkPermissions() { // 将存储和拍照权限合在一起申请 String[] permissions = new string[] {...}; PermissionCommon.requestPermissions(this.activity, permissions); if (!PermissionCommon.isHasPermissions(this.activity, permissions)) { UiCommon.toast(this.activity, "部分或全部权限未授予"); return false; } return true; }