小程序自動(dòng)更新(拿來(lái)就用??)

最近寫小程序項(xiàng)目,用到了自動(dòng)更新,因?yàn)槲覒械米约喝ヒ粋€(gè)個(gè)搜文檔的方法,所以就去搜了一個(gè)現(xiàn)成的,畢竟知道原理。希望各位能在理解原理的情況下再直接拿來(lái)使用(項(xiàng)目趕緊的話當(dāng)我沒(méi)說(shuō)QAQ)

/**
 * 檢測(cè)當(dāng)前的小程序
 * 是否是最新版本,是否需要下載、更新
 */
function checkUpdateVersion() {
  //判斷微信版本是否 兼容小程序更新機(jī)制API的使用
  if (wx.canIUse('getUpdateManager')) {
    //創(chuàng)建 UpdateManager 實(shí)例
    const updateManager = wx.getUpdateManager();
    //檢測(cè)版本更新
    updateManager.onCheckForUpdate(function(res) {
      // 請(qǐng)求完新版本信息的回調(diào)
      if (res.hasUpdate) {
        //監(jiān)聽(tīng)小程序有版本更新事件
        updateManager.onUpdateReady(function() {
          //TODO 新的版本已經(jīng)下載好,調(diào)用 applyUpdate 應(yīng)用新版本并重啟 ( 此處進(jìn)行了自動(dòng)更新操作)
          updateManager.applyUpdate();
        })
        updateManager.onUpdateFailed(function() {
          // 新版本下載失敗
          wx.showModal({
            title: '已經(jīng)有新版本嘍~',
            content: '請(qǐng)您刪除當(dāng)前小程序,到微信 “發(fā)現(xiàn)-小程序” 頁(yè),重新搜索打開(kāi)哦~',
          })
        })
      }
    })
  } else {
    //TODO 此時(shí)微信版本太低(一般而言版本都是支持的)
    wx.showModal({
      title: '溫馨提示',
      content: '當(dāng)前微信版本過(guò)低,無(wú)法使用該功能,請(qǐng)升級(jí)到最新微信版本后重試。'
    })
  }
}

建議在項(xiàng)目一開(kāi)始構(gòu)建時(shí)就加入哦,將方法放入小程序初始時(shí)就有的util.js中,然后可以在app.jsonLaunch()中調(diào)用就可以了!

//util.js中
function checkUpdateVersion(){...}
//util.js底下有導(dǎo)出方法
module.exports = {
  checkUpdateVersion
}

//app.js中
import { checkUpdateVersion } from "./utils/util"
App({
  //其他代碼
  onLaunch() {
    //自動(dòng)更新檢查
    checkUpdateVersion()
  },
  //其他代碼
})

如果想要在開(kāi)發(fā)者工具上調(diào)試,可以選擇調(diào)試模式


步驟1

步驟2
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容