微信小程序新版本發(fā)布之后用戶端如何更新
微信小程序同其他的應(yīng)用程序一樣,開發(fā)之后會(huì)不斷的優(yōu)化、調(diào)整,進(jìn)而會(huì)不定期發(fā)布新的版本,目的是為了給到用戶最好的體驗(yàn)。開發(fā)者在管理后臺(tái)發(fā)布新版本的小程序之后,用戶端是如何更新的呢?
微信小程序更新機(jī)制
1、啟動(dòng)時(shí)同步更新(分兩種情況)
1)定期檢查發(fā)現(xiàn)版本更新
微信運(yùn)行時(shí),會(huì)定期檢查最近使用的小程序是否有更新。如果有更新,下次小程序啟動(dòng)時(shí)會(huì)同步進(jìn)行更新,更新到最新版本后再打開小程序,盡可能保證用戶能夠盡快使用小程序的最新版本。開發(fā)者在后臺(tái)發(fā)布新版本之后,無法立刻影響到所有現(xiàn)網(wǎng)用戶,但最差情況下,也在發(fā)布之后24小時(shí)之內(nèi)覆蓋絕大多數(shù)用戶。
2)用戶長(zhǎng)時(shí)間未使用小程序
用戶長(zhǎng)時(shí)間未使用小程序時(shí),為保障小程序版本的實(shí)時(shí)性,會(huì)強(qiáng)制同步檢查版本更新,更新到最新版本后再打開小程序。
2、啟動(dòng)時(shí)異步更新
即使啟動(dòng)前未發(fā)現(xiàn)更新,小程序每次冷啟動(dòng)時(shí),都會(huì)異步檢查是否有更新版本。如果發(fā)現(xiàn)有新版本,將會(huì)異步下載新版本的代碼包。但當(dāng)次啟動(dòng)仍會(huì)使用客戶端本地的舊版本代碼,即新版本的小程序需要等下一次冷啟動(dòng)才會(huì)使用。
3、開發(fā)者手動(dòng)觸發(fā)更新
在啟動(dòng)時(shí)異步更新的情況下,如果開發(fā)者希望立刻進(jìn)行版本更新,可以使用 wx.getUpdateManager API(代碼如下)進(jìn)行處理,在有新版本時(shí)提示用戶重啟小程序更新新版本。
const updateManager = wx.getUpdateManager()
updateManager.onCheckForUpdate(function (res) {
// 請(qǐng)求完新版本信息的回調(diào)
console.log(res.hasUpdate)
})
updateManager.onUpdateReady(function () {
wx.showModal({
title: ‘更新提示’,
content: ‘新版本已經(jīng)準(zhǔn)備好,是否重啟應(yīng)用?’,
success(res) {
if (res.confirm) {
// 新的版本已經(jīng)下載好,調(diào)用 applyUpdate 應(yīng)用新版本并重啟
updateManager.applyUpdate()
}
}
})
})
updateManager.onUpdateFailed(function () {
// 新版本下載失敗
})
版權(quán)聲明:
本站所有文章和圖片均來自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請(qǐng)勿用于商業(yè)用途,如果損害了您的權(quán)利,請(qǐng)聯(lián)系網(wǎng)站客服處理。