小程序版本更新问题,希望小程序能马上更新版本

最近在做小程序更新的问题:

 

发现照官方文档:

 

https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/update-mechanism.html

 

及里面的源代码去操作,仍然满足不了我们的需求。

 

文档里说:

 

小程序版本更新问题,希望小程序能马上更新版本

 

需要24小时内,而且需要冷启动。

 

因此,对于现在我们还没有做后端的版本管理

 

就会出现,小程序已经审核了,我们也更新了后端的代码了,但仍然小程序用的是老版本的代码。

 

仍然会出错。

 

我做过如下偿试:

 

老用户(非第一次打开小程序),

1.点胶囊关闭小程序,再打开,==未能更新

2.重新进入小程序==未能更新

3.重新扫码小程序==未能更新

 

只有等到小程序销毁,或者说删除小程序。

 

因此,我只能直接在进入首页时,提示用户进行更新。

 

app.js的代码如下:

 

 

onUpdateVersion() {

 

// wx.getUpdateManager 在 1.9.90 才可用,请注意兼容

const updateManager = wx.getUpdateManager()

updateManager.onCheckForUpdate(function (res) {

// 请求完新版本信息的回调

console.log(res.hasUpdate)

})

updateManager.onUpdateReady(function () {

wx.showModal({

title: '更新提示',

content: '新版本已经准备好,是否马上重启小程序?',

success: function (res) {

if (res.confirm) {

// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启

updateManager.applyUpdate()

}

}

})

})

updateManager.onUpdateFailed(function () {

 

wx.showModal({

title: '已经有新版本了哟~',

content: '新版本已经上线啦~,请您删除当前小程序,重新搜索打开哟~',

showCancel:false })

// 新的版本下载失败

})

 

调用页代码如下:

 

小程序版本更新问题,希望小程序能马上更新版本

 

 

如此,就可以在页面onload时,也可以执行更新。

 

不过,也许可以考虑在onshow时,因为onload的话,也是在首页加载页面时。

 

打开过,后面就不会再执行onload事件了,除非用relauch进入页面。