赞
踩
uni.getUpdateManager() 返回全局唯一的版本更新管理器对象: updateManager,用于管理小程序更新。该方法只适用于小程序,不适用于APP和H5。
const updateManager = uni.getUpdateManager() // 小程序版本更新管理器
updateManager.onCheckForUpdate(res => { // 检测新版本后的回调
if(res.hasUpdate) { // 如果有新版本提醒并进行强制升级
uni.showModal({
content: '新版本已经准备好,是否重启应用?',
showCancel: false,
confirmText: '确定',
success: res => {
if (res.confirm) {
updateManager.onUpdateReady(res => { // 新版本下载完成的回调
updateManager.applyUpdate() // 强制当前小程序应用上新版本并重启
})
updateManager.onUpdateFailed(res => { // 新版本下载失败的回调
// 新版本下载失败,提示用户删除后通过冷启动重新打开
uni.showModal({
content: '下载失败,请删除当前小程序后重新打开',
showCancel: false,
confirmText: '知道了'
})
})
}
}
})
}
})
在onLaunch生命周期内调用版本更新的方法,如果已经更新过是最新版本的小程序,则不会提示版本更新。
注意:
小程序的开发版/体验版没有版本概念,所以无法在开发版/体验版上测试更版本更新情况,要么在本地测试,要么发布正式版本后验证。
本地调试在微信小程序开发工具中,添加编译模式:
点击普通编译下的【添加编译模式】按钮,勾选底部选项下次编译时模拟更新,然后使用该编译模式进行更新。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。