小程序版本更新后,有的机型用户看到的还是旧版,和服务端不同步。求解决啊
发布于 7 年前 作者 tangjie 10004 次浏览 来自 官方Issues

小程序版本更新后,用户看到的还是旧版,这段代码放在生命周期onShow里面检测有时候不出来。

  onShow: function() {
    console.log('热更新')
    if (wx.canIUse("getUpdateManager")) {
      const updateManager = wx.getUpdateManager();
      updateManager.onCheckForUpdate(function(res) {
        console.log("onCheckForUpdate====11111", res);
        // 请求完新版本信息的回调
        if (res.hasUpdate) {
          console.log("res.hasUpdate====");
        }
      });
      updateManager.onUpdateReady(function(res) {
        console.log(111, res);
        wx.showModal({
          title: "版本更新",
          content: "新版本已经准备好,确定重启应用?",
          showCancel: false,
          success: function(res) {
            console.log("success====", res);
            // res: {errMsg: "showModal: ok", cancel: false, confirm: true}
            if (res.confirm) {
              // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
              updateManager.applyUpdate();
            }
          }
        });
      });
      updateManager.onUpdateFailed(function() {
        // 新的版本下载失败
        wx.showModal({
          title: "已经有新版本了哟~",
          content: "新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~"
        });
      });
    }
  },
回到顶部