小程序
小游戏
企业微信
微信支付
扫描小程序码分享
getUpdateManager 2.10.3
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这个不用清除缓存。实时读取的
直接放onShow里调用就好。
全景发布后,这个很快就能触发
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
getUpdateManager 只是用来检测有无发布新版本,如果是全量发布的话,一般十多分钟基本都可以收到弹框的了。
清除缓存的话,wx.clearStorage或者wx.clearStorageSync只清除你设置的数据缓存,像webview只有移出小程序之后才能清除(除非你webview的链接加上时间戳),授权数据也无法像开发者工具那样去清除的。wx.removeSavedFile清除本地的临时文件缓存。[貌似跑题了]
update: function () {
const updateManager = wx.getUpdateManager();
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log((res.hasUpdate ? "" : "没有") + "发现新版本");
});
updateManager.onUpdateReady(function () {
wx.showToast({
icon: 'none',
title: '发现新版本\n准备重启小程序',
duration: 1500
setTimeout(function () {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}, 1500);
})
},
应该不能清缓存
这个方法只能检测到用户是不是最新的发版
弹框还需要后续的
我目前就遇到这个问题,新发布的版本虽然执行了wx.getUpdateManager方法但浏览器缓存或者说是之前的版本并未清除,不知道如何解决
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这个不用清除缓存。实时读取的
直接放onShow里调用就好。
全景发布后,这个很快就能触发
https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/update-mechanism.html
未启动时更新
开发者在管理后台发布新版本的小程序之后,如果某个用户本地有小程序的历史版本,此时打开的可能还是旧版本。微信客户端会有若干个时机去检查本地缓存的小程序有没有更新版本,如果有则会静默更新到新版本。总的来说,开发者在后台发布新版本之后,无法立刻影响到所有现网用户,但最差情况下,也在发布之后 24 小时之内下发新版本信息到用户。用户下次打开时会先更新最新版本再打开。
启动时更新
小程序每次冷启动时,都会检查是否有更新版本,如果发现有新版本,将会异步下载新版本的代码包,并同时用客户端本地的包进行启动,即新版本的小程序需要等下一次冷启动才会应用上。
getUpdateManager 只是用来检测有无发布新版本,如果是全量发布的话,一般十多分钟基本都可以收到弹框的了。
清除缓存的话,wx.clearStorage或者wx.clearStorageSync只清除你设置的数据缓存,像webview只有移出小程序之后才能清除(除非你webview的链接加上时间戳),授权数据也无法像开发者工具那样去清除的。wx.removeSavedFile清除本地的临时文件缓存。[貌似跑题了]
update: function () {
const updateManager = wx.getUpdateManager();
updateManager.onCheckForUpdate(function (res) {
// 请求完新版本信息的回调
console.log((res.hasUpdate ? "" : "没有") + "发现新版本");
});
updateManager.onUpdateReady(function () {
wx.showToast({
icon: 'none',
title: '发现新版本\n准备重启小程序',
duration: 1500
});
setTimeout(function () {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}, 1500);
})
},
应该不能清缓存
这个方法只能检测到用户是不是最新的发版
弹框还需要后续的
我目前就遇到这个问题,新发布的版本虽然执行了wx.getUpdateManager方法但浏览器缓存或者说是之前的版本并未清除,不知道如何解决