uni-app 调用 uni.chooseImage() 会重启应用 到主页

uni-app 调用 uni.chooseImage() 会重启应用 到主页

开发环境 版本号 项目创建方式
Windows win10 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Windows

HBuilderX类型:正式

HBuilderX版本号:3.1.13

手机系统:Android

手机系统版本号:Android 10

手机厂商:小米

手机机型:小米9

页面类型:vue

打包方式:云端

示例代码:

uni.chooseImage({
count: 1, //默认9
sizeType: ['compressed'], //可以指定是原图还是压缩图,默认二者都有 'original',
sourceType: ['camera'], //从相册选择和拍照
success: (res) => {
}
})

操作步骤:

调用 uni.chooseImage() 在手机开了多个其他app 在后台的情况下 选择图片或者拍照时 会重启应用到主页。

预期结果:

调用 uni.chooseImage() 在手机开了多个其他app 在后台的情况下 选择图片或者拍照时 会重启应用到主页。

实际结果:

调用 uni.chooseImage() 在手机开了多个其他app 在后台的情况下 选择图片或者拍照时 会重启应用到主页。




## bug描述:
调用 `uni.chooseImage()` 在手机开了多个其他app 在后台的情况下 选择图片或者拍照时 会重启应用到主页。

更多关于uni-app 调用 uni.chooseImage() 会重启应用 到主页的实战教程也可以访问 https://www.itying.com/category-93-b0.html

29 回复

建议先新创建简单工程测试是否可复现,把可复现的工程上传,方便他人排查。

更多关于uni-app 调用 uni.chooseImage() 会重启应用 到主页的实战教程也可以访问 https://www.itying.com/category-93-b0.html


好的 但是这个问题 我看好多人都朋友过 而且 是很久的问题了

回复 s***@sikebaoan.com: 直接运行hello uni-app在你的设备会遇到这个问题吗

回复 DCloud_uniCloud_JSON: 也会 拍照选择图片的时候

回复 DCloud_uniCloud_JSON: 先在手机后台 运行个10个应用 再去用uni-app应用 拍照上传就会

回复 s***@sikebaoan.com: 也就是说出现的条件是让手机后台开大量应用让手机内存吃不消?这种场景下你开其他应用的选择相册看看是否也会出现这种情况

回复 DCloud_uniCloud_JSON: 是的 也不一定是大量应用 多有几个就可能会出现 其他应用 没有出现这种问题 你们可以测试看看

回复 s***@sikebaoan.com: 我们没有复现哦,建议你那边重启设备再试试看。

回复 DCloud_uniCloud_JSON: 是存在这个问题 建议你们处理一下 我们根本解决不了

这个问题应该是选择的图太大,内存不够,无法渲染,崩溃了。
选完图后不要渲染在界面上,这样会降低内存占用。或者渲染一个非常小的缩略图

拍照来的 选择的图 我是调用压缩(app方法)过后 上传到后台的返回的 图片显示的 (有没有啥好的解决方法啊)

就算是内存不够 有没有什么 临界值 判断一下 好提示用户 清理出内存 (而不是 重启)

回复 s***@sikebaoan.com: 可以控制相机的分辨率,你这个估计是小米的亿级像素手机?内存是没有临界判断的,原生也没有

回复 DCloud_heavensoft: 可是 我用苹果6pius 测试也有这种情况 苹果6的相机像素不高啊

回复 DCloud_heavensoft: 其他的方法不会重启 就是这个chooseImage 方法会

回复 DCloud_heavensoft: 大佬 你们研究一下 解决方案啊 感觉很多人碰到这问题 体验太不好了

回复 s***@sikebaoan.com: iOS也一样,内存不足就会出问题。这是个相对问题,手机的可用内存大,图片小,就没事。反之就有事。但iOS不会整个app闪退,因为iOS的wkwebview有独立崩溃机制,这个页面可能会闪白一下,但app不会崩溃。核心还是,选到图片后,不要渲染大图到界面上。内存不够,一般都是渲染占了太多内存

根本不是所谓的图大小的问题 他描述的不对 小米系手机 用这个接口调相册图片 就是会这样 不是说打开几个app的问题

回复 奥茵科技: 你可能没有意识问题的严重性 不止小米手机 是所有机型都可能出现

回复 s***@sikebaoan.com: 我们这边不是所有手机 而且我发现了 所有选择相册的接口或者官方插件 都会有这样的问题

还真是这个原因哈,我清理内存把 size 放大到100就可以了。

问题是你不选择也会返回。你不可能限制用户不往手机存图片的大小格式。我看是glide oom导致。

希望这个bug修复下 影响太大

这不是bug,上面已经说了,控制摄像时的像素、不要渲染大图在屏幕上

回复 DCloud_heavensoft: 没有渲染图片 现在连正常返回都没有 而且也不是要显示 只是要上传 大小图都试了 内存也清理了

所有选择相册的接口或者官方插件 都会有这样的问题 三个官方的选择相册图片的接口我都测试了 都是一样的问题

现在是进入相册以后选择图片点完成就会重启应用 在回调里写log 没有任何返回 还没到渲染图片那步好不好

用小米手机打开两个 uniapp 应用 同意调用这个接口都是一样的问题

uniapp app项目在弱网环境下,进入一个页面,然后会出现:闪现一下回退到应用首页。出这种原因是不是应用重启了。有什么解决方法嘛(或阻止应用重启)

回到顶部