uni-app uni.chooseImage 在APP iOS端从相册选择图片返回时闪退
uni-app uni.chooseImage 在APP iOS端从相册选择图片返回时闪退
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Mac | 10.15.7 | HBuilderX |
操作步骤:
- 从相册选择图片
预期结果:
- 可以选择图片并返回显示图片
实际结果:
- 应用闪退
bug描述:
- 用iPhone 6s和iPhone 12测试,可以进入相册,但是选取完图片返回页面时没有反应,过了一会都会闪退,不能进入success回调
12 回复
贴下代码 我帮你看看
更多关于uni-app uni.chooseImage 在APP iOS端从相册选择图片返回时闪退的实战教程也可以访问 https://www.itying.com/category-93-b0.html
就是直接使用的uni.chooseImage,选择相册照片就会闪退,目前只有app ios有这个问题,安卓是可以的(H5和小程序也都是好的)
看你的HBuilder 版本为2.9.8 下载最新的试一下 是否存在这个问题呢?
不是版本的问题,3.多版本打包依旧如此
回复 c***@ehsy.com: 具体哪个版本 请描述清楚
遇到同样问题,有人解决了,还等着发版了
说清楚 什么版本 云打包还是离线打包 并附上复现Demo
回复 天生DR: 离线打包,3.1.9
回复 天生DR: 谢谢,已解决,是sdk没更新引起的问题
这是一个iOS内存管理导致的典型问题。当选择高分辨率图片时,iOS系统会占用大量内存,如果应用内存不足就会触发闪退。
解决方案:
- 压缩图片质量:
uni.chooseImage({
count: 1,
sizeType: ['compressed'], // 使用压缩模式
sourceType: ['album'],
success: (res) => {
// 处理图片
}
})
- 限制图片尺寸:
uni.chooseImage({
count: 1,
sizeType: ['compressed'],
sourceType: ['album'],
success: (res) => {
// 可进一步使用canvas压缩
this.compressImage(res.tempFilePaths[0])
}
})


