在app
页面的onShow
中使用:
具体步骤如下:
1、获取全局唯一的版本更新管理器对象
2、请求新版本信息
3、新版本下载,下载完后区分下载完成或下载失败
4、下载完成:调用 applyUpdate
应用新版本并重启
5、下载失败:提示用户手动更新
onShow() {
// 全局唯一的版本更新管理器对象
const updateManager = uni.getUpdateManager();
// 当向小程序后台请求完新版本信息,会进行回调
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调,true&false
console.log(res.hasUpdate);
});
// 当新版本下载完成,会进行回调
updateManager.onUpdateReady(function (res) {
uni.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
showCancel: false,
success(res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}
}
});
});
// 当新版本下载失败,会进行回调
updateManager.onUpdateFailed(function (res) {
// 新的版本下载失败
console.log('download error')
uni.showModal({
title: '提示',
content: '新版小程序下载失败\n请自行退出程序,手动卸载本程序,再运行',
confirmText: "知道了"
});
});
}
编译器测试,可以自主设置新版更新成功或更新失败:
更新成功:
更新失败:
该方法的适用性请看下表:
参考文档:
uniapp版本管理:uni.getUpdateManager()
微信小程序版本管理:UpdateManager
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。