并没有在微信的错误信息里收到报错
为什么每次更新版本,都有用户会出现进不了游戏的情况,要隔很长时间再进才行,是不是CDN的问题?
更新的代码如下,几乎是按文档做的,只是做了少许改动,在更新完的情况下没有取消按钮
游戏里会判断当前的版本是否是最新的,如果不是最新的,一直会是正在更新,请等待! 这个提示
不是所有的用户都会出现,是随机性的,比如A玩家这次出现,下次不会出现,所以我怀疑是不是CDN的问题
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log(res.hasUpdate)
if (res.hasUpdate) {
wx.showLoading({title:"正在更新,请等待!"})
}
})
updateManager.onUpdateReady(function () {
wx.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
showCancel: false,
success: function (res) {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate()
}
}
})
})
updateManager.onUpdateFailed(function () {
// 新版本下载失败
})
关于更新的问题请阅读文档运行机制:https://developers.weixin.qq.com/minigame/dev/guide/runtime/update-mechanism.html
上面是官方文档写的,这就是CDN影响的吧?
但问题是如果更新了版本,用户没下载到新版的JS,还用的是新版的UI,新版的服务端代码,旧版的JS
那一样会引起报错
所以如果用户代码不是最新的版本,我们必须让他等待更新到最新的代码,才能运行,否则旧的js和新的UI或者新的服务端代码是有冲突的。