关于小程序冷启动和热启动的更新问题

发布于 7 年前作者 umao728 次浏览最后编辑 7 年前来自 ask

我的微信小程序更新用到了小程序更新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 回复
ryao
ryao1 楼6 年前

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

jing84
jing842 楼6 年前

更新一下微信版本试试?

gangdai
gangdai3 楼6 年前

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

wchen
wchen4 楼6 年前

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

oyu
oyu5 楼6 年前

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

lixue
lixue6 楼6 年前

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

jie84
jie847 楼6 年前

我和你遇到同样问题

guiying85
guiying858 楼6 年前

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

litao
litao9 楼5 年前

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