----微信小程序热更新---- - 今天的代码你撸了嘛

----微信小程序热更新----

公司的小程序项目上线, 后期还会有小型的版本迭代. 为了让用户能在我们进行版本迭代后及时使用最新版本的功能. 做了以下优化..

知识点1: 当用户点击左上角关闭,或者按了设备Home 键离开微信,小程序并没有直接销毁,而是进入了后台;

当再次进入微信或再次打开小程序,又会从后台进入前台,只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。

知识点2: 小程序的启动分为"冷启动" 和 "热启动".

热启动是指: 小程序打开后,在一段时间内(目前:5分钟)再次被打开,此时会将后台的小程序切换到前台。

冷启动是指: 小程序首次打开或销毁后再次被打开

知识点3: 更新版本

冷启动时, 如果发现有新版本,将会异步下载新版本的代码包,并同时用客户端本地的包进行启动,即新版本的小程序需要等下一次冷启动才会应用上

如果要马上应用最新版本,使用 wx.getUpdateManager API 进行处理。

代码如下:

// app.js里面写下:

onLaunch () {
    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: \'当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。\'
      })
    }
  }

  

作者:小小小魔仙

链接:https://www.jianshu.com/p/4f5e3faaf483

来源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。