uni-app uni.chooseImage组件在oppo Find X8中打开相册为空

uni-app uni.chooseImage组件在oppo Find X8中打开相册为空

示例代码:

uni.chooseImage({  
      count: 4, //默认9  
      sourceType,  
      sizeType: ['compressed'], //可以指定是原图还是压缩图,默认二者都有  
        success: function (res) {  
            console.log(res)  
        }  
})
```

## 操作步骤:

下载app  
复现步骤:  
1. 底部菜单栏选择“应用”  
2. 找到 "用户档案"入口进入  
3. 档案列表中随意点击用户进入  
4. 用户信息页面点击右下角“写沟通记录”  
5. 新建沟通记录页面查找“添加图片”模块  
6. 点击“相册”调用会复现此问题  

## 预期结果:

调用相册并显示相册数据  

## 实际结果:

调起相册但是相册为空,没有正常显示相册中的数据  

## bug描述:

在云打包的APP中使用uni.chooseImage,在OPPO Find X8手机中,调起的相册为空  

![](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20250731/77255c76edacaf81c2befc3076b64cf8.jpg)

![](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20250731/361ef3a420260440f3cd2aec658e657f.png)

更多关于uni-app uni.chooseImage组件在oppo Find X8中打开相册为空的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

OPPO Find X8 这个设备的详细信息提供一下。在这个手机上标准基座能不能正常显示相册的图片。

更多关于uni-app uni.chooseImage组件在oppo Find X8中打开相册为空的实战教程也可以访问 https://www.itying.com/category-93-b0.html


manifest.json也发一下吧,我按照你安装包的一些配置打了个包复现不了问题。

回复 DCloud_Android_zl: 相关参数和代码私发给您了

【已解决】厂商适配问题,如果申请READ_MEDIA_IMAGES时,也需要带上"android.permission.READ_MEDIA_VIDEO",“android.permission.WRITE_EXTERNAL_STORAGE”

这是一个典型的Android权限适配问题。在OPPO Find X8这类较新的Android设备上,系统对存储权限的管理更加严格。

问题原因:

  1. Android 10及以上版本引入了分区存储机制,应用默认只能访问自己的专属目录
  2. OPPO系统对权限管理有额外限制,需要用户明确授权文件访问权限

解决方案:

  1. 检查并动态申请存储权限
// 在调用chooseImage前检查权限
uni.authorize({
  scope: 'scope.writePhotosAlbum',
  success() {
    uni.chooseImage({...})
  },
  fail() {
    uni.showModal({
      content: '需要相册访问权限',
      success: (res) => {
        if (res.confirm) {
          uni.openSetting()
        }
      }
    })
  }
})
  1. 在manifest.json中配置权限
{
  "app-plus": {
    "distribute": {
      "android": {
        "permissions": [
          "<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\"/>",
          "<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>"
        ]
      }
    }
  }
}
回到顶部