当前位置:首页 > 前端 > 正文内容

微信小程序强制热更新

Z先生5年前 (2020-05-26)前端2216

微信小程序分为冷启动和热启动,在更新后,一般需要一个周期,用户端才会重新更新。

官方从小程序基础库版本1.9.90开始支持强制更新

异步更新 + 强制更新方案介绍

从基础库 1.9.90 开始,我们提供了 wx.getUpdateManager 接口,使用该接口,可以获知是否有新版本小程序、新版本是否下载好以及应用新版本的能力。

当小程序冷启动时,会自动向微信后台请求新版本信息,如果有新版本,会马上触发新版本的下载。开发者可以通过 wx.getUpdateManager,获知当前更新的状态。

wx.getUpdateManager 接口会返回一个 UpdateManager 实例,UpdateManager 包含了三个回调:

1. onCheckForUpdate:当小程序向后台请求完新版本信息,会通知这个版本告知检查结果
2. onUpdateReady:当新版本下载完成,会回调这个事件
3. onUpdateFailed: 当新版本下载失败,会回调这个事件

具体示例:

// wx.getUpdateManager 在 1.9.90 才可用,请注意兼容
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 () {
 // 新的版本下载失败
})


其他相关问题:

1、小程序库如何设置最低版本?

登录小程序管理后台,进入“设置->基本设置->基础库最低版本设置”进行配置。

在配置前,开发者可查看近30天内访问小程序的用户的基础库版本占比,以帮助开发者了解当前用户使用的情况。


2、调试的时候如何设置更新检查


分享给朋友:

相关文章

小程序二维码传参处理&UNIAPP H5传参兼容处理

首先小程序生成二维码,我这里调用的接口是:getUnlimited,我传递的参数是:invite=10001接着就是小程序中处理,如果直接扫二维码在App.vue的onLaunch中,使用decode...

字体图标的妙用

什么是字体图标对于前端的小伙伴来说,字体应该是再熟悉不过的东西了,对于文字我们可以通过css指定文字对应的字体,字号大小,颜色。得益于css3,我们还可以在css中引入服务端字体来实现自定义字体。而字...

npm如何使用国内镜像源?

通过命令配置1. 命令淘宝源npm config set registry https://registry.npmmirror.com腾讯源npm ...

VUE打包时from UglifyJs Unexpected token: punc (()错误解决方案

归其原因是因为缺少ES2015的语法解析。因此进行如下2步操作即可解决问题:1、安装babel-preset-es2015npm install babel-preset-es20...

uniapp开发小程序,小程序二维传参与H5、分享页面参数兼容的处理方案。

首先小程序获取二维码接口有三个,2个限制数量,一个不限制数量,但是限制生成频率(5000次/分钟)和参数长度(32位),我使用的是不限数量的接口:getUnlimited,传递的参数为:invite=...

npm删除掉所有模块并重新安装的方法

1、删除目录:node_modules2、运行清理命令npm cache clean -f3、安装npm install...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。
请先 登录 再评论,若不是会员请先 注册