• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

关于微信小程序发布新版本后的提示用户更新的方法详解

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

当小程序发布新的版本后 ,用户如果之前访问过该小程序,通过已打开的小程序进入(未手动删除),则会检测新版本,提醒用户更新新的版本

话不多说,上代码

App({
   onLaunch: function () {
     // 检查更新
     this.autoUpdate()
   },
   autoUpdate: function(){
     let _this = this
     // 获取小程序更新机制的兼容,由于更新的功能基础库要1.9.90以上版本才支持,所以此处要做低版本的兼容处理
     if(wx.canIUse(\'getUpdateManager\')){
       // wx.getUpdateManager接口,可以获知是否有新版本的小程序、新版本是否下载好以及应用新版本的能力,会返回一个UpdateManager实例
       const updateManager = wx.getUpdateManager()
       // 检查小程序是否有新版本发布,onCheckForUpdate:当小程序向后台请求完新版本信息,会通知这个版本告知检查结果
       updateManager.onCheckForUpdate(function(res){
         // 请求完新版本信息的回调
         if(res.hasUpdate){
           // 检测到新版本,需要更新,给出提示
           wx.showModal({
             title: \'更新提示\',
             content: \'检测到新版本,是否下载新版本并重启小程序\',
             success: function(res){
               if(res.confirm){
                 // 用户确定更新小程序,小程序下载和更新静默进行
                 _this.downLoadAndUpdate(updateManager)
               }else if(res.cancel){
                 // 若用户点击了取消按钮,二次弹窗,强制更新,如果用户选择取消后不需要进行任何操作,则以下内容可忽略
                 wx.showModal({
                   title: \'提示\',
                   content: \'本次版本更新涉及到新功能的添加,旧版本将无法正常使用\',
                   showCancel: false, // 隐藏取消按钮
                   confirmText: \'确认更新\', // 只保留更新按钮
                   success: function(res){
                     if(res.confirm){
                       // 下载新版本,重启应用
                       _this.downLoadAndUpdate(updateManager)
                     }
                   }
                 })
               }
             }
           })
         } 
       })
     } else {
       // 在最新版本客户端上体验小程序
       wx.showModal({
         title: \'提示\',
         content: \'当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试\',
       })
     }
   },
   // 下载小程序最新版本并重启
   downLoadAndUpdate: function(updateManager){
     wx.showLoading()
     // 静默下载更新小程序新版本,onUpdateReady:当新版本下载完成回调
     updateManager.onUpdateReady(function(){
       wx.hideLoading()
       // applyUpdate:强制当前小程序应用上新版本并重启
       updateManager.applyUpdate()
     })
     // onUpdateFailed:当新版本下载失败回调
     updateManager.onUpdateFailed(function(){
       // 下载新版本失败
       wx.showModal({
         title: \'已有新版本\',
         content: \'新版本已经上线了,请删除当前小程序,重新搜索打开\',
       })
     })
   }
 })

 由于小程序开发版/体验版没有“版本”的概念,所以无法在开发版/体验版上测试版本更新情况,可以在开发工具上,添加编译模式,勾选最下方的“下次编译时模拟更新”,但是要注意,这种模式仅供一次编译,下次编译需重新设置

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
发布微信小程序体验版 - 儿时精神发布时间:2022-07-18
下一篇:
微信小程序发布新版本时自动提示用户更新的方法发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap