梁飞鸿
梁飞鸿
  • 发布:2020-11-11 15:01
  • 更新:2020-11-24 10:31
  • 阅读:5045

【报Bug】在app端没有相册权限调用uni.chooseImage后没有图片可选择

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win7

HBuilderX类型: 正式

HBuilderX版本号: 2.9.8

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: HMA AL00

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

1 - 云打包时adnroid配置项permissionExternalStorage设为none;always,目前政府检测卡的比较严,检测报告有不给权限不让用的这一项;而once,同样可能有选择用户禁止存储权限的情况。
2 - 手动禁止存储权限。

预期结果:

uni.chooseImage选择从手机相册选择,会动态判断相册权限,或者提供可以处理的方法

实际结果:

uni.chooseImage选择从手机相册选择,没有相册权限,打开内容无任何提示,没有可供选择的图片

bug描述:

uni.chooseImage设置相册、相机两种方式。
相机没有权限会拉取授权,
相册没有权限,会直接弹出没有图片可供选择的相册。
目前无法处理用户点击选择相册,动态处理权限问题。
只能自己在uni.chooseImage之前动态处理相册和相机权限,但是体验不太好。因无法得知用户是要拍照还是从相册选择,同时动态处理相机和相册两个权限,是会造成用户误解。

2020-11-11 15:01 负责人:无 分享
已邀请:
DCloud_Android_ST

DCloud_Android_ST

没有相册权限这概念 如果不提供储存操作权限则只能访问沙盒路径不支持相册读取。 APK如果没有存储权限则表示访问相册功能彻底丢失。如果APK存在存储权限想要动态查询申请存储权限状态可以通过https://www.html5plus.org/doc/zh_cn/android.html#plus.android.requestPermissions 动态申请

  • 梁飞鸿 (作者)

    感谢大佬,就是没有存储权限时,uni.chooseImage,选相册怎处理。目前直接就访问沙盒了,没有动态处理的机会。必须要在uni.chooseImage之前就动态处理?这还是我提到的问题,因无法得知用户是要拍照还是从相册选择,同时动态处理相机和相册两个权限,是会造成用户误解

    2020-11-11 15:43

  • DCloud_Android_ST

    回复 梁飞鸿: 既然知道APK就没有存储权限 那就不应该开通这方面的功能了。

    2020-11-11 16:11

  • 梁飞鸿 (作者)

    回复 DCloud_Android_ST: 这思路不对吧,没有这权限,难道不应该是动态拉取吗。没有这功能,用户会觉得有问题,这样客服压力就会很大。

    2020-11-11 16:29

  • 梁飞鸿 (作者)

    就是在用户选择 “从手机相册选择”选项,能否再动态获取权限?

    2020-11-11 16:30

  • DCloud_Android_ST

    回复 梁飞鸿: 强调一下 APK没有配置存储权限。就没有动态这个事了。只有你配置了存储权限就能有后续的动态申请

    2020-11-11 16:38

  • 梁飞鸿 (作者)

    回复 DCloud_Android_ST: 云打包都是存储权限是默认配置的吧,怎么会没有配置?

    2020-11-11 16:46

  • DCloud_Android_ST

    回复 梁飞鸿: 有就可以通过plus.android.requestPermissions 动态申请

    2020-11-11 16:48

  • 梁飞鸿 (作者)

    回复 DCloud_Android_ST: uni.chooseImage有选择相机和相册两种,你的意思是在调用之前把两种权限都动态申请?这种体验上就会比较差

    2020-11-11 16:54

  • 梁飞鸿 (作者)

    回复 DCloud_Android_ST: 目前选择相机是会先申请权限,我的意思是,uni.chooseImage的app封装函数中 “从手机相册选择”选项,是否能先申请权限?

    2020-11-11 16:57

  • DCloud_Android_ST

    回复 梁飞鸿: 嗯明白了 意思是chooseImage没有主动申请存储权限是吧 我反馈一下

    2020-11-11 17:05

  • 梁飞鸿 (作者)

    回复 DCloud_Android_ST: 是的,“从手机相册选择”选项没有主动申请存储权限。感谢大佬。

    2020-11-11 17:08

帅无敌

帅无敌 - 帅的惊动党

到底怎么处理这个问题,我设置成none 以后,后面再选择相册之前拉取权限,永远都是 权限已经被彻底拒绝,根部无法判断!

  • 梁飞鸿 (作者)

    设为none,需要自己在代码里判断权限,看下这个插件https://ext.dcloud.net.cn/plugin?id=594

    2020-11-25 15:55

该问题目前已经被锁定, 无法添加新回复