关于小程序冷启动和热启动的更新问题
发布于 5 年前 作者 umao 412 次浏览 来自 问答

我的微信小程序更新用到了小程序更新api:wx.getUpdateManager(),但是开发者工具可以用,版本审核通过线上发布以后,手机却不能用,我的手机微信版本是6.6.5,小程序基础库版本是1.9.97,这个该怎么办啊?

以下是我的代码,期待大佬翻牌

App({
  onLaunch: function() {
    if (wx.canIUse('getUpdateManager')) {
      const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function(res) {
        if (res.hasUpdate) {
          updateManager.onUpdateReady(function() {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经准备好,是否重启应用?',
              success: function(res) {
                if (res.confirm) {
                  updateManager.applyUpdate()
                }
              }
            })
          })
          updateManager.onUpdateFailed(function() {
            wx.showModal({
              title: '已经有新版本了哟~',
              content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~',
            })
          })
        }
      })
    } else {
      wx.showModal({
        title: '提示',
        content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
      })
    }
  },
})
9 回复

直接用官网的例子可以弹框,不要包含updateManager.onCheckForUpdate这个方法,一直在用

更新一下微信版本试试?

如果你的小程序处于热启动,则不会执行onLunch;建议把更新检测事件放到onShow中,这样每次打开小程序都会检测是否有新的代码包

请问您的问题解决了吗?我这边,安卓机中会出现新版本提示,iOS中也没有出现新版本提示

楼主,这个问题有没有得到解决,求共享

遇到同样问题,修改了个小bug后改了版本号,审核过后,真机并没有提示更新,请问楼主怎么解决的

我和你遇到同样问题

再发布一个版本这个方法就能用了

打印日志看看,是不是就没调用

回到顶部