Commit 6f705fd035685e78a62722d44838a0e54921a3ae

Authored by 朱显松
1 parent c7e2880b

1.图片选取列表中的拍摄照片按钮, 增加权限申请说明提示窗

config.gradle
@@ -21,7 +21,7 @@ ext { @@ -21,7 +21,7 @@ ext {
21 //编译方式 21 //编译方式
22 debug : false, 22 debug : false,
23 //版本号 23 //版本号
24 - version: "1.1.6.0", 24 + version: "1.1.6.1",
25 //Lib库前缀 25 //Lib库前缀
26 packeg : "com.cnlive.media", 26 packeg : "com.cnlive.media",
27 //Lib库名称 27 //Lib库名称
gradle/wrapper/gradle-wrapper.jar 0 → 100644
gradle/wrapper/gradle-wrapper.properties 0 → 100644
  1 +#Wed Oct 28 12:51:00 CST 2020
  2 +distributionBase=GRADLE_USER_HOME
  3 +distributionPath=wrapper/dists
  4 +zipStoreBase=GRADLE_USER_HOME
  5 +zipStorePath=wrapper/dists
  6 +distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
lib_media/src/main/java/com/cnlive/media/frame/view/MediaView.java
@@ -2,6 +2,7 @@ package com.cnlive.media.frame.view; @@ -2,6 +2,7 @@ package com.cnlive.media.frame.view;
2 2
3 import android.Manifest; 3 import android.Manifest;
4 import android.app.Dialog; 4 import android.app.Dialog;
  5 +import android.content.Context;
5 import android.graphics.Color; 6 import android.graphics.Color;
6 import android.graphics.drawable.ColorDrawable; 7 import android.graphics.drawable.ColorDrawable;
7 import android.media.ExifInterface; 8 import android.media.ExifInterface;
@@ -490,11 +491,57 @@ public class MediaView implements MvpView { @@ -490,11 +491,57 @@ public class MediaView implements MvpView {
490 } 491 }
491 } 492 }
492 493
  494 + public interface DialogOneListener {
  495 + void onClick();
  496 + }
  497 +
  498 + public static boolean checkPermissionOnly(Context context,
  499 + String content,
  500 + String[] permissions,
  501 + DialogOneListener listener) {
  502 + for (String permission : permissions) {
  503 + if (!TextUtils.isEmpty(permission) && ActivityCompat.checkSelfPermission(context, permission) != 0) {
  504 + // "相机权限与存储权限使用说明:\n相机权限用于拍摄照片,存储权限用于浏览和选择本地相册图片"
  505 + AlertDialogUtils.showTwoButtonDialog(context,
  506 + "取消", "我知道了", content,
  507 + R.color.color_dialog_btn, R.color.color_ffa300, new AlertDialogUtils.DialogTwoListener() {
  508 + @Override
  509 + public void onClickLeft(Dialog dialog) {
  510 + if (dialog != null) dialog.dismiss();
  511 + }
  512 +
  513 + @Override
  514 + public void onClickRight(Dialog dialog) {
  515 + if (dialog != null) dialog.dismiss();
  516 + if (listener != null) listener.onClick();
  517 + }
  518 + });
  519 + return false;
  520 + }
  521 + }
  522 + return true;
  523 + }
  524 +
493 //打开 录制页面 525 //打开 录制页面
494 public void openRecord() { 526 public void openRecord() {
495 - boolean hasPermissions = mActivity.getPresenter()  
496 - .checkPermissions(mActivity, mActivity.permissionsRecord, REQUEST_CODE_PERMISSION_CAMERA, mActivity.getResources().getString(R.string.dialog_imagepicker_permission_camera_nerver_ask_message), false);  
497 - if (hasPermissions) { 527 + boolean hasPermission = checkPermissionOnly(mActivity,
  528 + "相机、麦克风权限说明:\n相机与麦克风权限用于拍摄照片及录制视频。",
  529 + mActivity.permissionsRecord,
  530 + () -> {
  531 + boolean hasPermissions = mActivity
  532 + .getPresenter()
  533 + .checkPermissions(mActivity, mActivity.permissionsRecord, REQUEST_CODE_PERMISSION_CAMERA,
  534 + mActivity.getResources().getString(
  535 + R.string.dialog_imagepicker_permission_camera_nerver_ask_message
  536 + ),
  537 + false);
  538 + if (hasPermissions) {
  539 + RecordActivity.newInstance(mActivity, mActivity.mOptions);
  540 + }
  541 + }
  542 + );
  543 +
  544 + if (hasPermission) {
498 RecordActivity.newInstance(mActivity, mActivity.mOptions); 545 RecordActivity.newInstance(mActivity, mActivity.mOptions);
499 } 546 }
500 } 547 }