targetSdkVersion填30后云打包
- 发布:2024-04-24 18:41
- 更新:2024-06-07 10:32
- 阅读:594
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 4.08
手机系统: Android
手机系统版本号: Android 14
手机厂商: vivo
手机机型: IQOO 11s
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
uni.chooseImage能正常使用
uni.chooseImage能正常使用
实际结果:
调用uni.chooseImage后出来的相册是空的
调用uni.chooseImage后出来的相册是空的
bug描述:
targetSdkVersion填30,云打包后,将APP安装到安卓14手机上,在app内允许相册权限,调用uni.chooseImage,打开的相册是空的
plus.navigator.checkPermission('android.permission.READ_MEDIA_IMAGES') 返回是authored,但实际上是禁止的
代码里有判断,安卓13及以上用的是READ_MEDIA_IMAGES权限,安卓13以下用的是READ_EXTERNAL_STORAGE权限
后来targetSdkVersion填34,重新打云包后。功能就正常了。而且看起来,存储权限那里也不一样,只有一个照片与视频(最后一张图片跟第三张图比较)
但是真机运行到标准基座,还是不行(targetSdkVersion填34打包的自定义基座,功能正常)
问题已经定位到了,因为android13上存储权限已经被废弃,高于android13的设备应该申请android.permission.READ_MEDIA_IMAGES。我看代码是因为你们自己实现了图片选择,在处理android 权限申请时,需要区分不同的android 版本申请不同的权限。或者可以使用我们提供的图片选择。
-
-
-
梁飞鸿 (作者)
之所以没直接用uni.chooseImage,是因为应用市场要求调用权限之前要有权限说明。相机和相册是两个不同的权限,我们之前放在一起说明,上架时被拒审了。
2024-05-10 16:15
-
回复 梁飞鸿: 我是直接替换的u-avatar-cropper.vue文件里的
IMAGES_STORAGE,替换成android.permission.READ_MEDIA_IMAGES就正常请求权限了,你看一下是不是permission.js判断逻辑出了问题。2024-05-10 16:28
-
梁飞鸿 (作者)
回复 DCloud_Android_zl: 我试了,完全不行啊。你是不是之前先用android.permission.READ_EXTERNAL_STORAGE授权的啊,这个授权过了,那肯定是没问题啊
2024-05-10 18:20
-
梁飞鸿 (作者)
回复 DCloud_Android_zl: 将u-avatar-cropper.vue文件里的IMAGES_STORAGE,替换成android.permission.READ_MEDIA_IMAGES,手机上app删掉,然后自定义基座真机运行。还是不行啊
2024-05-10 18:27
-
-
-
回复 梁飞鸿: 重新看了一下,如果应用targetSDK低于33的话,
android.permission.WRITE_EXTERNAL_STORAGE也需要同时申请。也就是调用plus.android.requestPermissions需要传入两个权限。[“android.permission.READ_MEDIA_IMAGES”,"android.permission.WRITE_EXTERNAL_STORAGE"]
https://developer.android.com/reference/android/Manifest.permission#READ_EXTERNAL_STORAGE2024-05-10 20:00
-




DCloud_Android_zl
我这边验证没问题,说一下你这边的复现流程吧,还有这个权限申请是在什么情况下触发的;或者提供一个安装包,说明一下复现步骤
2024-04-30 15:57
梁飞鸿 (作者)
回复 DCloud_Android_zl: 你好,安装包下载地址和操作流程录屏都放在机密信息里了,请看下
2024-04-30 16:20
DCloud_Android_zl
回复 梁飞鸿: manifest.json 发一下吧
2024-05-07 17:43
梁飞鸿 (作者)
回复 DCloud_Android_zl: 附件里发了
2024-05-07 17:54
DCloud_Android_zl
回复 梁飞鸿: 你用4.14重新打包试一下呢,我这边各种环境下目前无法复现这个问题,你看一下用最新的打包有没有问题。
2024-05-07 18:02
DCloud_Android_zl
回复 梁飞鸿: 麻烦升级到最新之后用传统打包重新提交一次,我这边现在环境无法复现,我这边测试的云打包也是没问题的
2024-05-07 18:08
梁飞鸿 (作者)
回复 DCloud_Android_zl: 用4.14传统打包重新提交一次,还是一样的,相册是空的。好像必须是安卓14才有这问题
2024-05-08 13:33
梁飞鸿 (作者)
回复 DCloud_Android_zl: 我这手机是vivo的,系统是安卓14
2024-05-08 13:33
DCloud_Android_zl
回复 梁飞鸿: 好的,我再看一下
2024-05-08 16:18
DCloud_Android_zl
回复 DCloud_Android_zl: 我这边实在是复现不了你这个问题,你要不把这个图片选择拆出来个示例发给我,我看一下。
2024-05-09 16:36
梁飞鸿 (作者)
回复 DCloud_Android_zl: 你好项目在附件里,请看下
2024-05-10 13:40