uni-app 小米手机选择图片无法从相册获取图片

发布于 1周前 作者 htzhanglong 来自 Uni-App

uni-app 小米手机选择图片无法从相册获取图片

开发环境 版本号 项目创建方式
Windows win11 HBuilderX

操作步骤:

  • 使用微信浏览器扫描 官方web连接 —》调用图片选择页面–》从图片选择页面计入相册—》选择图片----》回退是页面图片

预期结果:

  • 相册图能带回

实际结果:

  • 相册选择的图片没有带回

bug描述:

  • 小米手机调用uni.chooseImage 进入图片选择页面可以选择图片,但是从次页面进入相册,无法选择图片,失败成功无回调。使用官方demo也是这样。 目前 小米6x 、k30 、k50、k60都有这个问题

3 回复

问题解决了吗,可以看看你的代码吗


我今天在做这个例程时,也是这种问题。当时觉得赋值给imgArr的this可能有问题。将函数改成 success: res => { 后OK

在处理uni-app在小米手机上选择图片无法从相册获取图片的问题时,首先需要确保uni-app和相关依赖库都已更新到最新版本,因为新版本可能已经修复了这个问题。如果问题依然存在,可以尝试通过代码层面进行一些调整和优化。以下是一个基本的示例代码,展示如何在uni-app中实现图片选择功能,并处理可能遇到的问题。

首先,确保在manifest.json文件中已经配置了必要的权限,特别是访问相册和存储的权限:

"mp-weixin": { // 示例平台配置,其他平台类似
    "requiredPrivateInfos": ["chooseImage"]
},
"app-plus": {
    "distribute": {
        "android": {
            "permissions": [
                "android.permission.READ_EXTERNAL_STORAGE",
                "android.permission.WRITE_EXTERNAL_STORAGE"
            ]
        }
    }
}

接下来,在页面的.vue文件中实现图片选择功能:

<template>
  <view>
    <button @click="chooseImage">选择图片</button>
    <image v-if="imageSrc" :src="imageSrc" style="width: 100%; height: auto;"></image>
  </view>
</template>

<script>
export default {
  data() {
    return {
      imageSrc: ''
    };
  },
  methods: {
    chooseImage() {
      uni.chooseImage({
        count: 1, // 默认9
        sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
        sourceType: ['album', 'camera'], // 从相册选择或是用相机拍摄,默认二者都有
        success: (res) => {
          // tempFilePath可以作为img标签的src属性显示图片
          const tempFilePaths = res.tempFilePaths;
          this.imageSrc = tempFilePaths[0];
          console.log('选择的图片路径:', tempFilePaths);
        },
        fail: (err) => {
          console.error('选择图片失败:', err);
          uni.showToast({
            title: '选择图片失败',
            icon: 'none'
          });
        }
      });
    }
  }
};
</script>

<style>
/* 添加一些基本的样式 */
button {
  margin: 20px;
  padding: 10px 20px;
  background-color: #007aff;
  color: white;
  border: none;
  border-radius: 5px;
}
</style>

如果上述代码在小米手机上仍然无法从相册获取图片,可能需要进一步检查以下几点:

  1. 确认小米手机的系统权限设置中,应用是否已经获得了访问相册的权限。
  2. 尝试在小米手机的开发者选项中,关闭MIUI优化,看是否影响功能。
  3. 检查是否有其他安全软件或系统级应用阻止了uni-app的访问。

如果问题依然存在,建议查看uni-app社区和小米开发者论坛,看是否有其他开发者遇到并解决了类似的问题。

回到顶部