diff --git a/entry/src/main/config.json b/entry/src/main/config.json index 25371e6ac69c53e165fc1742b2a29a4f2d6eaa60..25689b20a5be4fd71868079a2579a6bbbed06e99 100644 --- a/entry/src/main/config.json +++ b/entry/src/main/config.json @@ -92,23 +92,48 @@ }, "reqPermissions": [ { - "name": "com.lzy.imagepickerdemo.DataAbility.DATA" + "name": "ohos.permission.INTERNET", + "reason": "Internet" }, { - "reason": "Internet", - "name": "ohos.permission.INTERNET" + "name": "ohos.permission.WRITE_MEDIA", + "reason": "Read User Storage", + "usedScene": { + "ability": [ + "com.donkingliang.imageselector.MainAbility" + ], + "when": "inuse" + } }, { + "name": "ohos.permission.READ_USER_STORAGE", "reason": "Read User Storage", - "name": "ohos.permission.READ_USER_STORAGE" + "usedScene": { + "ability": [ + "com.donkingliang.imageselector.MainAbility" + ], + "when": "inuse" + } }, { + "name": "ohos.permission.READ_MEDIA", "reason": "Get Camera", - "name": "ohos.permission.READ_MEDIA" + "usedScene": { + "ability": [ + "com.donkingliang.imageselector.MainAbility" + ], + "when": "inuse" + } }, { + "name": "ohos.permission.MEDIA_LOCATION", "reason": "Get Media", - "name": "ohos.permission.MEDIA_LOCATION" + "usedScene": { + "ability": [ + "com.donkingliang.imageselector.MainAbility" + ], + "when": "inuse" + } }, { "name": "ohos.permission.CAMERA", diff --git a/entry/src/main/java/com/donkingliang/imageselector/MainAbility.java b/entry/src/main/java/com/donkingliang/imageselector/MainAbility.java index b70e02faa27d8d219fc80e22fb797d490205cd3c..e3c59b352e2fa23463c464051a3dc7ba3301fee9 100644 --- a/entry/src/main/java/com/donkingliang/imageselector/MainAbility.java +++ b/entry/src/main/java/com/donkingliang/imageselector/MainAbility.java @@ -225,33 +225,37 @@ public class MainAbility extends Ability { */ @Override protected void onAbilityResult(int requestCode, int resultCode, Intent resultData) { - if (resultData == null) { - return; - } - images.clear(); - imagePicker.getImageLoader().clearMemoryCache(); - super.onAbilityResult(requestCode, resultCode, resultData); - if (resultCode == ImagePicker.REQUEST_CODE_PREVIEW - || resultCode == ImagePicker.RESULT_CODE_ITEMS - && requestCode == Constant.ONWZORE) { - images = resultData.getSerializableParam(ImagePicker.EXTRA_RESULT_ITEMS); - if (isCrop) { - img = images.get(0).uriSchema; + try { + if (resultData == null) { + return; } - } else if (resultCode == REQ_PERMISSION_CODE && requestCode == Constant.ONWZORE) { // 拍照回调 - img = resultData.getSerializableParam(ImagePicker.EXTRA_RESULT_ITEMS); - if (!isCrop) { - ImageItem imageItem = new ImageItem(); - imageItem.uriSchema = img; - images.add(imageItem); + images.clear(); + imagePicker.getImageLoader().clearMemoryCache(); + super.onAbilityResult(requestCode, resultCode, resultData); + if (resultCode == ImagePicker.REQUEST_CODE_PREVIEW + || resultCode == ImagePicker.RESULT_CODE_ITEMS + && requestCode == Constant.ONWZORE) { + images = resultData.getSerializableParam(ImagePicker.EXTRA_RESULT_ITEMS); + if (isCrop) { + img = images.get(0).uriSchema; + } + } else if (resultCode == REQ_PERMISSION_CODE && requestCode == Constant.ONWZORE) { // 拍照回调 + img = resultData.getSerializableParam(ImagePicker.EXTRA_RESULT_ITEMS); + if (!isCrop) { + ImageItem imageItem = new ImageItem(); + imageItem.uriSchema = img; + images.add(imageItem); + } } - } - if (isCrop) { - cropImg(img); + if (isCrop) { + cropImg(img); + } + MyAdapter adapter = new MyAdapter(images); + gridView.setItemProvider(adapter); + } catch (SecurityException e){ + } - MyAdapter adapter = new MyAdapter(images); - gridView.setItemProvider(adapter); } /**