小程序更新机制 https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/update-mechanism.html
好久没写过随笔了,做前端也几年了,技术一直没长进,还是渣渣一枚,记录一下最近开发的一些常见功能实现吧。
小程序版本更新这两三年做过了两次,大部分做小程序的应该都需要加上这么个功能,今天记录一下。
方法写在app.js就好,在小程序初始化onLaunch方法里调用,在开发工具上模仿更新打开会首先弹出代码里设置的提示框,然后点击“确定更新”后还会弹出小程序默认的一个更新提示框,具体在真机上是如何的还不太清楚,不知道安卓系统和ios系统是不是效果和开发工具上一样,如果一样的话可以把自身设置的提示框去掉,直接用系统的提示框就好。
//检测版本更新 autoUpdate: function () { var self = this // 获取小程序更新机制兼容 if (wx.canIUse('getUpdateManager')) { const updateManager = wx.getUpdateManager() //1. 检查小程序是否有新版本发布 updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 if (res.hasUpdate) { updateManager.onUpdateReady(function () { wx.showModal({ title: '更新提示', content: '新版本已经准备好,是否重启应用?', showCancel: false, //隐藏取消按钮 confirmText: "确定更新", //只保留确定更新按钮 success: function (res) { if (res.confirm) { updateManager.applyUpdate() } } }) // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 // updateManager.applyUpdate() }) updateManager.onUpdateFailed(function () { // 新版本下载失败 wx.showModal({ title: '更新提示', content: '新版本下载失败,请您删除当前小程序,重新搜索打开。', }) }) } }) } else { // 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示 wx.showModal({ title: '提示', content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。' }) } },