微信小程序配置自動更新,微信小程序自動升級

我們開發完小程序,發佈新版本之後,用戶如果想體驗新版本,需要把小程序從使用列表刪除,在重新搜索之後,再次打開,新的版本纔會生效。但是, 隨着我們更新次數的增加,這種方式就很不友好,用戶體驗下降,所以在開發中,我們就要考慮配置小程序自動更新。

首先,我們需要了解下小程序的運行機制,小程序啓動可以分爲兩種情況,一種是冷啓動,一種是熱啓動

  • 冷啓動:如果用戶首次打開,或小程序銷燬後被用戶再次打開,此時小程序需要重新加載啓動,即冷啓動。

  • 熱啓動:如果用戶已經打開過某小程序,然後在一定時間內再次打開該小程序,此時小程序並未被銷燬,只是從後臺狀態進入前臺狀態,這個過程就是熱啓動。

在瞭解下更新機制

  • 未啓動時更新:就是說用戶本地已經存在小程序歷史版本,此時打開不是最新版本,最壞的情況是24小時內下發推送給用戶。

  • 啓動時更新:就是冷啓動,用戶從未體驗小程序,或者小程序銷燬後再打開。異步下載新版本,並同時用本地的包進行啓動,新版本需要等下一次冷啓動纔會應用上。

上面簡單介紹了小程序的運行機制和更新機制,接下來就是配置小程序自動更新。我們在app.js中,新增如下代碼

// 小程序自動更新
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) {
              // 新的版本已經下載好,調用 applyUpdate 應用新版本並重啓
              updateManager.applyUpdate()
            }
          }
        })
      })
      updateManager.onUpdateFailed(function () {
        // 新的版本下載失敗
        wx.showModal({
          title: '已經有新版本了喲~',
          content: '新版本已經上線啦~,請您刪除當前小程序,重新搜索打開喲~'
        })
      })
    }
  })
}

添加編譯模式

abf7bf85542d7f5160d3bec2a459f6fc.png

 

小程序會重新編譯,版本更新已提示

 

 

 

更新完會重啓,小程序自動更新已配置完成。

 

參考:https://www.cnblogs.com/nmgwap/p/16331632.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章