【ミニプログラム】バージョンリリース自動更新の仕組み

2 つのサブミッションのバージョン番号が同じ場合、アプレットは最新バージョンに更新されますか?
実際には、これは更新メカニズムには影響しません。あなた自身のバージョン番号は単なるメモであり、WeChat にはレビュー後の比較用のデジタル バージョン番号があります。
WeChat が提供する機能によると、ミニプログラムの更新プロセスはおおよそ次のとおりです。
ここに画像の説明を挿入

構成:
基本ライブラリのデバッグ、2.17.0 以上に設定。

メソッド:
app.js にこれら 2 つのメソッドを追加し、onLaunch で呼び出します。

  onLaunch(options) {
    
    
    this.autoUpdate()
  },
  // 版本更新
  autoUpdate() {
    
    
    var _this = this;
    // 获取小程序更新机制兼容
    if(!wx.canIUse('getUpdateManager')) {
    
    
      return
    }
    const updateManager = wx.getUpdateManager()
    updateManager.onCheckForUpdate(function (res) {
    
    
      // 请求完新版本信息的回调
      if (res.hasUpdate) {
    
    
        _this.onUpdateReady()
      }
    })
  },
  onUpdateReady() {
    
    
    var _this = this;
    wx.showLoading()
    updateManager.onUpdateReady(function () {
    
    
      wx.showModal({
    
    
        title: '更新提示',
        content: '有版本更新,是否重启小程序?',
        success(res) {
    
    
          wx.hideLoading()
          if (res.confirm) {
    
    
            // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          } else if(res.cancel) {
    
    
            wx.showModal({
    
    
              title: '提示',
              content: '本次版本有新的功能添加,请及时更新',
              showCancel:false,//隐藏取消按钮
              confirmText:"更新",//只保留确定更新按钮
              success: function(res) {
    
    
                if (res.confirm) {
    
    
                  //下载新版本,并重新应用
                  updateManager.applyUpdate()
                }
              }
            })
          }
        }
      })
    })

    updateManager.onUpdateFailed(function () {
    
    
      // 新版本下载失败
    })
  }

シミュレートされた更新:
試用版では、更新メカニズムをテストできません。ただし、開発者ツールのビルド モードでは、シミュレートされた更新が提供されます。
ここに画像の説明を挿入

詳細については、以下を確認してください。
1. WeChat 開発コミュニティのこの記事
2. 公式ドキュメント

おすすめ

転載: blog.csdn.net/LuviaWu/article/details/124186811