咱们开发完小程序,发布新版本以后,用户若是想体验新版本,须要把小程序从使用列表删除,在从新搜索以后,再次打开,新的版本才会生效。可是, 随着咱们更新次数的增长,这种方式就很不友好,用户体验降低,因此在开发中,咱们就要考虑配置小程序自动更新。小程序
首先,咱们须要了解下小程序的运行机制,小程序启动能够分为两种状况,一种是冷启动,一种是热启动。微信小程序
冷启动:若是用户首次打开,或小程序销毁后被用户再次打开,此时小程序须要从新加载启动,即冷启动。微信
在了解下更新机制app
未启动时更新:就是说用户本地已经存在小程序历史版本,此时打开不是最新版本,最坏的状况是24小时内下发推送给用户。异步
上面简单介绍了小程序的运行机制和更新机制,接下来就是配置小程序自动更新。咱们在app.js中,新增以下代码ide
// 小程序自动更新 if (wx.canIUse('getUpdateManager')) { const updateManager = wx.getUpdateManager() updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 if (res.hasUpdate) { updateManager.onUpdateReady(function () { wx.showModal({ title: '更新提示', content: '新版本已经准备好,是否重启应用?', success: function (res) { if (res.confirm) { // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 updateManager.applyUpdate() } } }) }) updateManager.onUpdateFailed(function () { // 新的版本下载失败 wx.showModal({ title: '已经有新版本了哟~', content: '新版本已经上线啦~,请您删除当前小程序,从新搜索打开哟~' }) }) } }) }
添加编译模式code
小程序会从新编译,版本更新已提示blog
更新完会重启,小程序自动更新已配置完成。开发