1. 程式人生 > >Cordova熱更新(三、版本控制)

Cordova熱更新(三、版本控制)

需求:

1,由於app稽核的限制,app稽核狀態和釋出上線狀態展示內容有區別

2,各大應用市場稽核狀態不一致,有的在稽核,有的稽核失敗了,有的稽核通過了,所以各大應用市場的app版本是不一樣的,如果不同版本的app裡面的內容發生bug又如何解決

所以這就需要一個釋出的版本控制了。

這裡先整理下app中幾個要素:專案號,渠道號,app版本號

這裡舉例如下:專案號 01 代表我們的專案 叫極速外賣

渠道號:100代表官方渠道,101 代表蘋果渠道,102代表應用寶,103代表小米渠道,104代表華為渠道 105代表369渠道 依次新增...

app版本號:一開始為1.0.0

這樣就形成了號碼如下(會有很多,這裡就列舉幾個了):

01100100

01101100

01102100

01103100

01104100

01105100

上面每個號碼對應一個資料夾放在http://app.xiaoyu.cn的伺服器上面根目錄下,在app的熱更新configfile裡面url就對應如下:

<config-file url="http://app.xiaoyu.cn/01100100/chcp.json" />

<config-file url="http://app.xiaoyu.cn/01101100/chcp.json" />

<config-file url="http://app.xiaoyu.cn/01102100/chcp.json" />

<config-file url="http://app.xiaoyu.cn/01103100/chcp.json" />

<config-file url="http://app.xiaoyu.cn/01104100/chcp.json" />

<config-file url="http://app.xiaoyu.cn/01105100/chcp.json" />

然後01100100這些資料夾,其實可以軟連結到另外的內容檔案資料夾contens裡面的具體版本資料夾,內容資料夾以版本來命名比如1.0.0,1.0.1,1.0.2,1.0.3,1.0.4,1.0.5等等如下圖:


所以在app裡面真實請求的是右邊內容版本資料夾中的chcp.json,然後chcp.json裡面的content url地址

<config-file url="http://app.xiaoyu.cn/contents/1.0.0" />


<config-file url="http://app.xiaoyu.cn/contents/1.0.1" />

<config-file url="http://app.xiaoyu.cn/contents/1.0.2" />

<config-file url="http://app.xiaoyu.cn/contents/1.0.3" />

<config-file url="http://app.xiaoyu.cn/contents/1.0.4" />

<config-file url="http://app.xiaoyu.cn/contents/1.0.5" />

這樣一來,要使app切換內容版本就很方便了,因為app是指向到01100100這些資料夾的,只要操作01100100這些資料夾對應contents中的1.0.0這些資料夾對應關係就好了,比如:01100100可以指向1.0.0資料夾,就代表官方渠道的1.0.0app的內容版本是1.0.0,01100100也可以指向1.0.5資料夾,那麼就代表官方渠道的1.0.0app的內容版本更新到了最新的內容版本1.0.5。