uni.chooseImage({
count: 1,
sourceType: ['camera', 'album'],
success: function (res) {
console.log(JSON.stringify(res.tempFilePaths));
}
});
- 发布:2025-01-20 16:09
- 更新:2025-08-06 16:30
- 阅读:962
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 15.2 (24C101)
HBuilderX类型: 正式
HBuilderX版本号: 4.45
手机系统: Android
手机系统版本号: Android 5.1
手机厂商: 华为
手机机型: WPOS-MINI
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
点击btn,调用 uni.chooseImage
点击btn,调用 uni.chooseImage
预期结果:
调用相机拍照
调用相机拍照
实际结果:
没反应,也没有任何回调,也没有catch到任何报错
没反应,也没有任何回调,也没有catch到任何报错
bug描述:
【2025-01-20 16:09】uni.chooseImage打开相机没反应,但是可以打开相册,扫码也正常
【2025-08-06 16:26】目前测试已解决,HBuilderX4.7.5打包后,Android5可以正常打开相机了,但是更新完ui上出了一些问题,正在修复,本帖结束关闭,感谢官方支持~
最佳回复
9***@qq.com (作者)
【2025-08-06 16:26】目前测试已解决,HBuilderX4.7.5打包后,Android5可以正常打开相机了,但是更新完ui上出了一些问题,正在修复,本帖结束关闭,感谢官方支持~
9***@qq.com (作者)
这是我的权限列表
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"/>
<uses-permission android:name="android.permission.BRICK"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.NFC"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_LOGS"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
9***@qq.com (作者)
测试了两天,小白鼠总结下,4.24以下Android5.1可以打开相机,高版本sdk调用相机无反应~
- 4.45 ❌
4.45-alpha ❌
4.44 ❌
4.36 ❌
4.29 ❌
4.28 ❌
4.24 ✅
4.07 ✅
9***@qq.com (作者)
捞一下,HBuilder X 4.64 依旧没有解决
-
-
-
-
-
-
-
-
-
-
-
9***@qq.com (作者)
回复 1***@qq.com: 目前我们是h5用最新版的sdk,pda的话要兼容android5用的4.24sdk,分开打包了,除了比较麻烦目前没什么问题。不过新版的sdk有的鸿蒙h5也调不起相机。
2025-06-03 10:38
9***@qq.com (作者)
捞一下,如果说是抛弃android的话,也希望告知一声。
否则文档里写API等级兼容到android4,造成了很大的困扰。
-
-
9***@qq.com (作者)
回复 暴躁东北虎: https://uniapp.dcloud.net.cn/tutorial/app-android-minsdkversion.html#android%E7%89%88%E6%9C%AC%E5%88%97%E8%A1%A8
2025-06-03 11:19
-
-
回复 9***@qq.com: minSdkVersion和targetversion这个是用来告诉手机你的应用适配的系统,不是平台api适配系统的情况。好比如你把minSdkVersion填成32,那低于33的系统就装不了你的应用了,即安卓13以下的手机系统都安装不了你应用
2025-06-03 11:31
-
回复 9***@qq.com:minSdkVersion指最低版本,而targetSdkVersion是指目前你的app已适配到最大版本,好比如是填的26,这版本就太低了,那高版本的系统安装时会提示该app专为低版本安卓打造,可能就安装不了了
2025-06-03 11:36
-
9***@qq.com (作者)
回复 暴躁东北虎: minSdkVersion和targetSdkVersion明白,我意思hbuilder打包的时候,api等级可以选到19,是不是意味着hbuilder的sdk理论上是支持Android4.4的
2025-06-03 11:44
-
回复 9***@qq.com: 也看api的,他可能有些api支持19,有些不支持的,好比如我用安卓8调用uni.chooseMedia会闪退,提了bug官方也没理https://ask.dcloud.net.cn/question/208436?notification_id-1524588rf-falseitem_id-299096__answer_id-299096__single-TRUE#!answer_299096
2025-06-03 11:47
-
9***@qq.com (作者)
回复 暴躁东北虎: https://uniapp.dcloud.net.cn/tutorial/app-android-minsdkversion,还有这篇文档,“默认值为19(即最低支持Android4.4)”。
我的minSdkVersion是21,对应Android5.0,我理解调不起相机不应该的。2025-06-03 11:55
-
2***@qq.com
不行啊,Android12还是调不起来,已更新至4.7.6
2025-10-22 16:15