這篇文章將為大家詳細(xì)講解有關(guān)如何實(shí)現(xiàn)小程序頁面級版本控制,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計、成都網(wǎng)站制作、寶豐網(wǎng)絡(luò)推廣、小程序開發(fā)、寶豐網(wǎng)絡(luò)營銷、寶豐企業(yè)策劃、寶豐品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供寶豐建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:chinadenli.net
在此之前我們先了解下小程序的運(yùn)行機(jī)制。
小程序啟動會有兩種情況,一種是「冷啟動」,一種是「熱啟動」。
「熱啟動」
假如用戶已經(jīng)打開過某小程序,然后在一定時間內(nèi)再次打開該小程序,此時無需重新啟動,只需將后臺態(tài)的小程序切換到前臺,這個過程就是熱啟動。
「冷啟動」
用戶首次打開或小程序被微信主動銷毀后再次打開的情況,此時小程序需要重新加載啟動,即冷啟動。
『 對于小程序版本更新的思考 』
小程序冷啟動時,如果發(fā)現(xiàn)有新版本,將會異步下載新版本的代碼包,并同時用客戶端本地的包進(jìn)行啟動,即新版本的小程序需要等下一次冷啟動才會應(yīng)用上。
在小程序的開發(fā)過程中,我們經(jīng)常會遇到一種情況,當(dāng)修復(fù)一個緊急bug或者上線一種新功能時,產(chǎn)品希望用戶打開小程序的時候就是最新版。
或許你想到了用wx.getUpdateManager這個API,在小程序啟動的時候監(jiān)聽有無版本更新,并且能夠強(qiáng)制小程序重啟并使用新版本。
但是這會導(dǎo)致一個用戶體驗(yàn)問題,每次有新版本包時都會提示用戶更新,對于需求迭代更新速度快的小程序特別不友好,非常打擾用戶。
轉(zhuǎn)轉(zhuǎn)是一個日活幾百萬的小程序,業(yè)務(wù)線分了好多條,每天都有可能會發(fā)布新版本甚至不止一個。迫切需要實(shí)現(xiàn)版本更新管理。
我們就想著可以通過接口獲取需要更新的版本信息,根據(jù)返回結(jié)果再判斷是否需要重啟使用新包。
鑒于轉(zhuǎn)轉(zhuǎn)有多條業(yè)務(wù)線,希望當(dāng)用戶不進(jìn)入某條需要更新的業(yè)務(wù)線時就不用強(qiáng)制更新,只想實(shí)現(xiàn)以頁面為粒度判斷是否需要更新。下圖是我們設(shè)計的思路:
但是這就涉及到需要RD幫我們存儲數(shù)據(jù)、提供接口獲取數(shù)據(jù)。當(dāng)時快年底了RD資源很緊張,所以就想著不用RD,前端能不能自己做?
于是,云開發(fā),正式登場......
『 云開發(fā)提供的能力:數(shù)據(jù)庫 』
云開發(fā)提供了一個JSON數(shù)據(jù)庫,讓我們可以在控制臺創(chuàng)建一個版本信息的集合,在里面插入需要更新的版本信息。
云函數(shù)讓我們能夠自己寫函數(shù)實(shí)現(xiàn)讀取數(shù)據(jù)庫的功能。每次請求時,我們只返回前三條記錄,3條記錄的版本都高于小程序自帶版本的話,說明用戶也很久沒打開過小程序了,直接提示用戶更新。
一開始我們的設(shè)計思路是每個頁面打開時都去調(diào)云函數(shù)判斷是否需要更新當(dāng)前頁,轉(zhuǎn)轉(zhuǎn)的頁面打開次數(shù)每天都是千萬級別,當(dāng)時還比較擔(dān)心云開發(fā)能否頂住壓力。
就這樣,不依賴RD,完美解決版本更新的問題,當(dāng)然設(shè)計思路還有待改進(jìn),但云開發(fā)讓我們沒有了后顧之憂。
關(guān)于如何實(shí)現(xiàn)小程序頁面級版本控制就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
分享名稱:如何實(shí)現(xiàn)小程序頁面級版本控制
本文來源:http://chinadenli.net/article46/gojjhg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、全網(wǎng)營銷推廣、定制網(wǎng)站、商城網(wǎng)站、微信公眾號、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)