评论

小程序调用wx.chooseImage程序奔溃的问题

wx.chooseImage会导致小程序奔溃,基于wx.chooseImage的优化方案

就在昨天把老板提的需求写好之后,上传审核提交发布。然后就出现了问题。在用户需要上传图片的时候,只要选择拍照程序就会重新启动。我当场就蒙逼了。小程序的bug还真是数不胜数啊。

下面贴上部分代码:

wx.chooseImage({
   count,
   sizeType: ['original''compressed'],
   sourceType: ['camera''album']


调试的时候,同事的手机使用了之后直接重新启动,或者卡住不动弹。然而另外两位同事却没啥问题,于是在两台小米8都不行,一台Mix2和Mi10都没问题的情况下,安卓开发组的同事下了判断,有可能是内存不足。调用相机是很占系统内存的,导致了小程序奔溃。

在我反复的看文档都找不到解决问题的办法时,我在论坛上看看有啥解决问题的方法。却发现18年就有帖子说出现这种情况了。但是官方没给出没有解决问题的方法。于是我灰头土脸的回到百度了起来。却没有发现一个有用的。都是教导怎么使用wx.chooseImage的demo。

看着代码我突然发现sourceType同时调用两种类型album+camera会占用较大内存,那么单一调用是不是会好一点。虽然这不是解决问题的方法。但是应该可以让更多的手机兼容一下小程序。

于是我就写了个弹窗

const sourceType = Number(type) === 1 ? ['camera'] : ['album']
      wx.chooseImage({
        count,
        sizeType: ['original', 'compressed'],
        sourceType, // camera album
        success (res) {
          // tempFilePath可以作为img标签的src属性显示图片
          const tempFilePaths = res.tempFilePaths

不得不说这效果还是可以的。至少我的小米8兼容了此项做法,皆大欢喜。老板现在要是问起来,接下来的锅让腾讯背上就好。(~ ̄▽ ̄)~ 

最后一次编辑于  2020-10-15  
点赞 4
收藏
评论

4 个评论

  • admin
    admin
    2020-10-15

    还有这个坑啊,我得改改我的小程序了

    2020-10-15
    赞同 1
    回复
  • Admin ²º²⁴
    Admin ²º²⁴
    2020-10-15

    哈,这个我一直在用的方法。

    这个代码多写点,兼容性确实好很多。

    我也碰到过。

    2020-10-15
    赞同 1
    回复 6
    • Admin ²º²⁴
      Admin ²º²⁴
      2020-10-15
      2020-10-15
      回复
    • Admin ²º²⁴
      Admin ²º²⁴
      2020-10-15回复Admin ²º²⁴
      感谢分享。
      2020-10-15
      2
      回复
    • admin
      admin
      2020-10-15回复Admin ²º²⁴
      从微信选择是什么,官方文档貌似没有写啊
      2020-10-15
      回复
    • Admin ²º²⁴
      Admin ²º²⁴
      2020-10-15回复admin
      wx.chooseMessageFile
      2020-10-15
      回复
    • admin
      admin
      2020-10-15回复Admin ²º²⁴
      好的,谢谢
      2020-10-15
      回复
    查看更多(1)
  • 细水长流
    细水长流
    2021-10-22

    强啊老哥!

    2021-10-22
    赞同
    回复
  • 无名
    无名
    2020-10-21

    这个问题,我也遇到了,但我这边只选择了拍照一种模式,还是会小程序崩溃

    2020-10-21
    赞同
    回复 3
    • 无名
      无名
      2020-10-21
      有什么解决方法推荐吗
      2020-10-21
      回复
    • Damon Chu
      Damon Chu
      2020-11-20回复无名
      https://developers.weixin.qq.com/miniprogram/dev/component/camera.html 用camera获取展示图像
      2020-11-20
      1
      回复
    • 广
      广
      2021-10-12回复无名
      崩溃的问题解决了吗?
      2021-10-12
      回复
登录 后发表内容