zoukankan      html  css  js  c++  java
  • 检查更新操作由微信在小程序冷启动时自动触发,不需由开发者主动触发,开发者只需监听检查结果即可

    wx.getUpdateManager()

    基础库 1.9.90 开始支持,低版本需做兼容处理

    获取全局唯一的版本更新管理器,用于管理小程序更新。

    关于小程序的更新机制,可以查看 运行机制 文档。

    updateManager

    updateManager 对象的方法列表:

    方法参数说明
    onCheckForUpdate callback 当向微信后台请求完新版本信息,会进行回调
    onUpdateReady callback 当新版本下载完成,会进行回调
    onUpdateFailed callback 当新版本下载失败,会进行回调
    applyUpdate   当新版本下载完成,调用该方法会强制当前小程序应用上新版本并重启
    onCheckForUpdate(callback) 回调结果说明:
    属性类型说明
    hasUpdate Boolean 是否有新的版本

    注: 检查更新操作由微信在小程序冷启动时自动触发,不需由开发者主动触发,开发者只需监听检查结果即可。

    onUpdateReady(callback) 回调结果说明:

    当微信检查到小程序有新版本,会主动触发下载操作(无需开发者触发),当下载完成后,会通过 onUpdateReady 告知开发者。

    onUpdateFailed(callback) 回调结果说明:

    当微信检查到小程序有新版本,会主动触发下载操作(无需开发者触发),如果下载失败(可能是网络原因等),会通过onUpdateFailed 告知开发者。

    applyUpdate() 说明:

    当小程序新版本已经下载时(即收到 onUpdateReady 回调),可以通过这个方法强制重启小程序并应用上最新版本。

    示例代码:

    const updateManager = wx.getUpdateManager()
    
    updateManager.onCheckForUpdate(function (res) {
      // 请求完新版本信息的回调
      console.log(res.hasUpdate)
    })
    
    updateManager.onUpdateReady(function () {
      wx.showModal({
        title: '更新提示',
        content: '新版本已经准备好,是否重启应用?',
        success: function (res) {
          if (res.confirm) {
            // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
            updateManager.applyUpdate()
          }
        }
      })
      
    })
    
    updateManager.onUpdateFailed(function () {
      // 新的版本下载失败
    })
    

    Tips:

    1. 微信开发者工具上可以通过「编译模式」下的「下次编译模拟更新」开关来调试
    2. 小程序开发版/体验版没有「版本」概念,所以无法在开发版/体验版上测试更版本更新情况
  • 相关阅读:
    设计模式-外观模式
    发生死锁怎么办
    设计模式-工厂模式
    设计模式-模板方法
    设计模式-命令模式(Command)
    设计模式-单例模式
    设计模式-装饰器模式
    CQRS之旅——旅程8(后记:经验教训)
    CQRS之旅——旅程7(增加弹性和优化性能)
    CQRS之旅——旅程6(我们系统的版本管理)
  • 原文地址:https://www.cnblogs.com/rsapaper/p/9610046.html
Copyright © 2011-2022 走看看