微信小程序不会添加了自动更新代码,不会自动更新?
//检查是否存在新版本
uni.getUpdateManager().onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log("是否有新版本:"+res.hasUpdate);
if(res.hasUpdate){//如果有新版本
// 小程序有新版本,会主动触发下载操作(无需开发者触发)
uni.getUpdateManager().onUpdateReady(function () {//当新版本下载完成,会进行回调
uni.showModal({
title: '更新提示',
content: '请点确定享用新功能',
showCancel:false,
success: function (res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
uni.getUpdateManager().applyUpdate();
}
}
})
})
// 小程序有新版本,会主动触发下载操作(无需开发者触发)
uni.getUpdateManager().onUpdateFailed(function () {//当新版本下载失败,会进行回调
uni.showModal({
title: '提示',
content: '检查到有新版本,但下载失败,请检查网络设置',
showCancel: false,
})
})
}
});
3 回复
文档是这样写的,分开监控:updateManager.onCheckForUpdate和updateManager.onUpdateReady分开。亲测没问题
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log(res.hasUpdate)
})
updateManager.onUpdateReady(function () {
wx.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success(res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
}
}
})
})
updateManager.onUpdateFailed(function () {
// 新版本下载失败
})