微信小程序实现自动更新

153 阅读1分钟

微信小程序,在开发者更新后,有的用户不会自动更新,在小程序内部去校验是否需要自动更新。

/**
 * 小程序更新
 */
export function checkUpdateVersion() {
  console.log('版本自动更新事件');
  //判断微信版本是否 兼容小程序更新机制API的使用
  if (wx.canIUse('getUpdateManager')) {
    console.log('检测版本更新');
    const updateManager = wx.getUpdateManager();
    //检测版本更新
    updateManager.onCheckForUpdate(function (res) {
      if (res.hasUpdate) {
        console.log('确定更新版本');
        updateManager.onUpdateReady(function () {
          console.log('更新完毕');
          wx.showModal({
            title: '温馨提示',
            content: '检测到新版本,是否重启小程序?',
            showCancel: false,
            success: function (res) {
              if (res.confirm) {
                // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
                updateManager.applyUpdate()
              }
            }
          })
        })
        updateManager.onUpdateFailed(function () {
          console.log('更新失败');
          // 新版本下载失败
          wx.showModal({
            title: '已有新版本',
            content: '请您删除小程序,重新搜索进入',
          })
        })
      }else {
        console.log('无需更新');
      }
    })
  } else {
    console.log('版本号过低');
    wx.showModal({
      title: '溫馨提示',
      content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
    })
  }
}

在 app.js 里面 调用

image.png

控制台输出

image.png