uni-app h5在安卓系统调用图片上传(拍照或选择图片)功能后无反应,成功和失败回调均未执行
uni-app h5在安卓系统调用图片上传(拍照或选择图片)功能后无反应,成功和失败回调均未执行
示例代码:
uni.chooseImage({
count: 1, // 默认9
sizeType: ['compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success(res) {
console.log(res)
},
fail(res) {
// _this.reminderMessage = '图片上传失败,请稍后再试';
}
});
操作步骤:
在安卓系统,h5页面,点击唤起拍照和相册,选中之后,没有任何返回
预期结果:
在安卓系统,h5页面,点击唤起拍照和相册,选中之后,应该会返回当前图片的数据
实际结果:
在安卓系统,h5页面,点击唤起拍照和相册,选中之后,没有任何返回
bug描述:
鸿蒙系统与ios系统都是在唤起拍照和相册之后能拿到数据,但是安卓系统(h5)唤起拍照和相册之后,都没有跑到成功和失败回调中
| 信息类别 | 信息内容 |
|----------------|------------------------------------|
| 产品分类 | uniapp/H5 |
| PC开发环境 | Windows |
| PC操作系统版本 | Windows 10 专业版 19042.1348 |
| HBuilderX类型 | 正式 |
| HBuilderX版本 | 3.2.9 |
| 浏览器平台 | 手机系统浏览器 |
| 浏览器版本 | 小米自带浏览器 |
| 项目创建方式 | HBuilderX |
更多关于uni-app h5在安卓系统调用图片上传(拍照或选择图片)功能后无反应,成功和失败回调均未执行的实战教程也可以访问 https://www.itying.com/category-93-b0.html
我把上传后的路径,alert出来了 ,请查看附件中的视频 , 没复现到你的问题, 测试环境 小米浏览器
更多关于uni-app h5在安卓系统调用图片上传(拍照或选择图片)功能后无反应,成功和失败回调均未执行的实战教程也可以访问 https://www.itying.com/category-93-b0.html
看一下我发的视频在下面
视频,和手机版本照片我给放到附件中了,我在成功和失败中都打了alert,浏览器是手机自带的
你这也不是小米浏览器啊,这不是oppo浏览器么
其他的oppo手机正常么,
测试只有一个小米手机,所以只知道有一个小米手机是不正常的,我这里只借到了这一个oppo
这个是有问题的哪个小米手机型号
oppo和小米我都试过了,没有问题,没复现到,所以你看看你的编辑器版本是否能升级或者降级一下
编辑器是最新的,那我降级下看看
你的版本是哪一个,我用你的哪个版本试试,我用的是3.2.9
回复 d***@ehsy.com: 我的是3.2.6
回复 小枫叶: 我降级到了3.2.6也是不行,用的上面哪个小米手机测得
这个问题通常是由于安卓系统浏览器对H5文件上传API的兼容性限制导致的。以下是几个关键排查点:
-
检查浏览器权限:确保浏览器已获得相机和相册访问权限。在安卓设置中为浏览器应用开启相机和存储权限。
-
使用input元素替代:在H5环境下,部分安卓浏览器对
uni.chooseImage支持不完善。可以尝试使用原生input元素:
<input type="file" accept="image/*" capture="camera" @change="handleFile">
-
检查页面协议:确保页面通过HTTPS协议访问,部分安卓浏览器在HTTP协议下会限制媒体设备访问。
-
测试不同浏览器:在Chrome、Firefox等主流浏览器中测试,排除小米浏览器特定兼容问题。
-
添加超时处理:由于安卓系统可能延迟响应,可以添加超时机制:
setTimeout(() => {
// 处理超时逻辑
}, 10000);

