| | |
| | | private void checkPermission_After(final Activity context, final int tag) { |
| | | String permission = Manifest.permission.CAMERA; |
| | | // 未授权 如果应用程序没有所需的权限,则显示解释说明 |
| | | PermissionExplanationDialog.getInstance().showPortConflictPdDialog(context, context.getString(R.string.camera_storage_instructions), context.getString(R.string.camera_storage_purpose)); |
| | | // PermissionExplanationDialog.getInstance().showPortConflictPdDialog(context, context.getString(R.string.camera_storage_instructions), context.getString(R.string.camera_storage_purpose)); |
| | | int status = PermissionUtils.getPermissionState(context, permission); |
| | | switch (status) { |
| | | case PermissionUtils.STATUS_SUCCESS: |
| | | PermissionExplanationDialog.getInstance().dismiss(); |
| | | // PermissionExplanationDialog.getInstance().dismiss(); |
| | | dismiss(); |
| | | if (0 == tag) { |
| | | take_photo(); |
| | |
| | | * 从相册中获取图片 |
| | | */ |
| | | private void select_photo() { |
| | | String permission = Manifest.permission.WRITE_EXTERNAL_STORAGE; |
| | | int status = PermissionUtils.getPermissionState(mContext, permission); |
| | | |
| | | switch (status) { |
| | | case PermissionUtils.STATUS_SUCCESS: |
| | | openAlbum(); |
| | | break; |
| | | case PermissionUtils.STATUS_REFUSE: |
| | | case PermissionUtils.STATUS_DEFAULT: |
| | | XXPermissions.with(mContext) |
| | | .permission(permission) |
| | | .request(new OnPermissionCallback() { |
| | | @Override |
| | | public void onGranted(List<String> permissions, boolean all) { |
| | | SharedPreUtils.putBoolean(permission, true); |
| | | openAlbum(); |
| | | } |
| | | if (Build.VERSION.SDK_INT >= 33) { |
| | | //默认成功 |
| | | openAlbum(); |
| | | } else { |
| | | String permission = Manifest.permission.WRITE_EXTERNAL_STORAGE; |
| | | int status = PermissionUtils.getPermissionState(mContext, permission); |
| | | switch (status) { |
| | | case PermissionUtils.STATUS_SUCCESS: |
| | | openAlbum(); |
| | | break; |
| | | case PermissionUtils.STATUS_REFUSE: |
| | | case PermissionUtils.STATUS_DEFAULT: |
| | | XXPermissions.with(mContext) |
| | | .permission(permission) |
| | | .request(new OnPermissionCallback() { |
| | | @Override |
| | | public void onGranted(List<String> permissions, boolean all) { |
| | | SharedPreUtils.putBoolean(permission, true); |
| | | openAlbum(); |
| | | } |
| | | |
| | | @Override |
| | | public void onDenied(List<String> permissions, boolean never) { |
| | | SharedPreUtils.putBoolean(permission, true); |
| | | } |
| | | }); |
| | | break; |
| | | case PermissionUtils.STATUS_REFUSE_PERMANENT: |
| | | @Override |
| | | public void onDenied(List<String> permissions, boolean never) { |
| | | SharedPreUtils.putBoolean(permission, true); |
| | | } |
| | | }); |
| | | break; |
| | | case PermissionUtils.STATUS_REFUSE_PERMANENT: |
| | | // HdlThreadLogic.toast(mContext, R.string.permission_open); |
| | | HdlDialogLogic.getInstance().showSettingPermissionDialog(mContext); |
| | | break; |
| | | HdlDialogLogic.getInstance().showSettingPermissionDialog(mContext); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | |