欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

小程序?qū)崙?zhàn)(十七)-版本自動(dòng)更新 - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >

小程序?qū)崙?zhàn)(十七)-版本自動(dòng)更新

發(fā)表時(shí)間:2021-1-4

發(fā)布人:葵宇科技

瀏覽次數(shù):111

一、需求說明
  1. 目前出現(xiàn)情況:每次發(fā)布新版本,如果用戶正在使用小程序,都需要讓用戶將小程序銷毀再重新啟動(dòng),才能使用最新版本的代碼
  2. 希望當(dāng)小程序版本更新后,用戶打開小程序時(shí)自動(dòng)檢查是否有新版本,若有,則提示用戶是否更新

二、需求實(shí)現(xiàn)

2.1 冷啟動(dòng)和熱啟動(dòng)

用戶打開小程序時(shí)有兩種啟動(dòng)方式:

  • 冷啟動(dòng):若用戶首次打開,或小程序銷毀后被再次打開,此時(shí)需要重新加載,會(huì)檢查當(dāng)前最新版本的代碼,并運(yùn)行。
  • 熱啟動(dòng):如果用戶已經(jīng)打開過小程序,且在一定時(shí)間內(nèi)再次打開,此時(shí)小程序并未被銷毀,并不會(huì)檢查最新代碼。

2.2 熱啟動(dòng)時(shí)實(shí)現(xiàn)版本更新

使用微信官方提供的 api 來檢查并更新版本: 一般會(huì)將代碼寫在 app.js 的 onLaunch 函數(shù)中,在打開小程序時(shí)就執(zhí)行

App({
    onLaunch() {
	// 判斷是否能用這個(gè) api
	if (wx.canIUse('getUpdateManager')) {
     		// 創(chuàng)建 updateManager 實(shí)例
		const updateManager = wx.getUpdateManager()
     		 // 檢查是否有新版本
		updateManager.onCheckForUpdate(function(res) {
        		// hasUpdate 指是否有新版本,為 boolean 值
			if (res.hasUpdate) {
				updateManager.onUpdateReady(function() {
					wx.showModal({
						title: '更新提示',
						content: '新版本已經(jīng)準(zhǔn)備好,是否重啟應(yīng)用?',
						success: function(res) {
							if (res.confirm) {
                  						// 強(qiáng)制更新版本
								updateManager.applyUpdate()
							}
						}
					})
				}),
				updateManager.onUpdateFailed(function() {
					wx.showModal({
						title: '已經(jīng)有新版本了',
						content: '新版本已經(jīng)上線啦~,請(qǐng)您刪除當(dāng)前小程序,重新搜索打開'
					})
				})
			}
		})
	} else {
		wx.showModal({
		    title: '提示',
		    content: '當(dāng)前微信版本過低,無法使用該功能,請(qǐng)升級(jí)到最新微信版本后重試。'
		})
	}
    }
})
復(fù)制代碼

附上用到的幾個(gè) api 說明:

  1. UpdateManager.onCheckForUpdate()

  1. UpdateManager.onUpdateReady()

  1. UpdateManager.applyUpdate()



相關(guān)案例查看更多