From 84ebb42e5043bcd48128e9d43ac394673ea5ea98 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期五, 07 二月 2025 16:27:26 +0800 Subject: [PATCH] 2025年02月07日16:27:23 --- app/src/main/java/com/hdl/photovoltaic/widget/popupview/CameraAlbumPopWindow.java | 26 ++++++++++++++++---------- 1 files changed, 16 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/popupview/CameraAlbumPopWindow.java b/app/src/main/java/com/hdl/photovoltaic/widget/popupview/CameraAlbumPopWindow.java index 0ad2f74..7d19b72 100644 --- a/app/src/main/java/com/hdl/photovoltaic/widget/popupview/CameraAlbumPopWindow.java +++ b/app/src/main/java/com/hdl/photovoltaic/widget/popupview/CameraAlbumPopWindow.java @@ -34,6 +34,7 @@ import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.utils.PermissionUtils; import com.hdl.photovoltaic.utils.SharedPreUtils; +import com.hdl.photovoltaic.widget.PermissionExplanationDialog; import com.hjq.permissions.OnPermissionCallback; import com.hjq.permissions.XXPermissions; @@ -102,10 +103,12 @@ */ 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)); int status = PermissionUtils.getPermissionState(context, permission); - switch (status) { case PermissionUtils.STATUS_SUCCESS: + PermissionExplanationDialog.getInstance().dismiss(); dismiss(); if (0 == tag) { take_photo(); @@ -120,6 +123,7 @@ .request(new OnPermissionCallback() { @Override public void onGranted(List<String> permissions, boolean all) { + PermissionExplanationDialog.getInstance().dismiss(); dismiss(); SharedPreUtils.putBoolean(permission, true); if (0 == tag) { @@ -131,12 +135,14 @@ @Override public void onDenied(List<String> permissions, boolean never) { + PermissionExplanationDialog.getInstance().dismiss(); dismiss(); SharedPreUtils.putBoolean(permission, true); } }); break; case PermissionUtils.STATUS_REFUSE_PERMANENT: + PermissionExplanationDialog.getInstance().dismiss(); // HdlThreadLogic.toast(mContext, R.string.permission_open); HdlDialogLogic.getInstance().showSettingPermissionDialog(mContext); break; @@ -230,15 +236,15 @@ // intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); // intent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI); - //鍏煎android7.0 浣跨敤鍏变韩鏂囦欢鐨勫舰寮� - ContentValues contentValues = new ContentValues(1); - contentValues.put(MediaStore.Images.Media.DISPLAY_NAME, outputImagepath.getName()); - contentValues.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg"); - Uri uri = mContext.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues); - intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); - Uri photoURI = FileProvider.getUriForFile(mContext, "com.hdl.photovoltaic.fileProvider", outputImagepath); - intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); - intent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI); + //鍏煎android7.0 浣跨敤鍏变韩鏂囦欢鐨勫舰寮� + ContentValues contentValues = new ContentValues(1); + contentValues.put(MediaStore.Images.Media.DISPLAY_NAME, outputImagepath.getName()); + contentValues.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg"); + Uri uri = mContext.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues); + intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); + Uri photoURI = FileProvider.getUriForFile(mContext, "com.hdl.photovoltaic.fileProvider", outputImagepath); + intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION); + intent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI); } // 寮�鍚竴涓甫鏈夎繑鍥炲�肩殑Activity锛岃姹傜爜涓篜HOTO_REQUEST_CAREMA ((Activity) mContext).startActivityForResult(intent, TAKE_PHOTO); -- Gitblit v1.8.0