客戶端熱更新機制實現(xiàn)

客戶端熱更新機制實現(xiàn)

客戶端和服務(wù)器端各自維護兩個版本描述文件:

來自chcp.json

{
    "server_urls": [
    "192.168.1.251",
        "192.168.1.250",
        "192.168.1.106",
        "192.168.1.241",
        "192.168.1.110"
    ],
    "release": "2017.07.16-18.54.39"
}

來自chcp.manifest

[
    {
        "file": "50x.html",
        "hash": "d74f9cdd604653c22c6752c46fffd587"
    },
    {
        "file": "index.html",
        "hash": "4279d6e7f61095181041d9ac9733a1e6"
    }
]

文件命名主要參考Cordova熱更新插件呛每,之所以用它的規(guī)范拾氓,主要是起初想用它實現(xiàn)一部分終端的熱更新,但是后來決定不用了泉瞻,但命名規(guī)則保留了。

chcp.json中維護兩個屬性苞冯,一個是服務(wù)器列表袖牙,一個是當前版本;chcp.manifest中維護當前每個文件及其散列值抱完。

更新邏輯:

  1. 客戶端(下稱Client)根據(jù)本地chcp.json中的服務(wù)器列表贼陶,向服務(wù)器請求服務(wù)端的chcp.json文件。
  2. 獲得服務(wù)器的chcp.json文件后,首先更新本地的服務(wù)器列表碉怔。
  3. 對比本地主版本號與服務(wù)器端主版本號烘贴。
  4. 如果一樣,進入程序主頁
  5. 如果不一樣撮胧,下載服務(wù)器端chcp.manifest文件桨踪。
  6. 對比本地chcp.manifest文件與服務(wù)器端chcp.manifest文件的差異:
    • 記錄只有本地才有的文件名,這些文件待刪除芹啥。
    • 記錄只有服務(wù)器端才有的文件名锻离,這些文件帶下載。
    • 本地和服務(wù)器端一致的文件墓怀,對比其散列值汽纠,如果一致,不作操作傀履,如果不一致虱朵,刪除本地文件,下載服務(wù)器端文件钓账。

更新代碼: Payload已經(jīng)在線路選擇部分列出碴犬,不再列了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末梆暮,一起剝皮案震驚了整個濱河市服协,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌啦粹,老刑警劉巖偿荷,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異唠椭,居然都是意外死亡遭顶,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門泪蔫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來棒旗,“玉大人,你說我怎么就攤上這事撩荣∠橙啵” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵餐曹,是天一觀的道長逛拱。 經(jīng)常有香客問我,道長台猴,這世上最難降的妖魔是什么朽合? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任俱两,我火速辦了婚禮,結(jié)果婚禮上曹步,老公的妹妹穿的比我還像新娘宪彩。我一直安慰自己,他們只是感情好讲婚,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布尿孔。 她就那樣靜靜地躺著,像睡著了一般筹麸。 火紅的嫁衣襯著肌膚如雪活合。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天物赶,我揣著相機與錄音白指,去河邊找鬼。 笑死酵紫,一個胖子當著我的面吹牛侵续,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播憨闰,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼需五!你這毒婦竟也來了鹉动?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤宏邮,失蹤者是張志新(化名)和其女友劉穎泽示,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蜜氨,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡械筛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了飒炎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片埋哟。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖郎汪,靈堂內(nèi)的尸體忽然破棺而出赤赊,到底是詐尸還是另有隱情,我是刑警寧澤煞赢,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布抛计,位于F島的核電站,受9級特大地震影響照筑,放射性物質(zhì)發(fā)生泄漏吹截。R本人自食惡果不足惜瘦陈,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望波俄。 院中可真熱鬧晨逝,春花似錦、人聲如沸弟断。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽阀趴。三九已至昏翰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間刘急,已是汗流浹背棚菊。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留叔汁,地道東北人统求。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像据块,于是被迫代替她去往敵國和親码邻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理另假,服務(wù)發(fā)現(xiàn)像屋,斷路器,智...
    卡卡羅2017閱讀 134,601評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,527評論 25 707
  • 點擊查看原文 Web SDK 開發(fā)手冊 SDK 概述 網(wǎng)易云信 SDK 為 Web 應(yīng)用提供一個完善的 IM 系統(tǒng)...
    layjoy閱讀 13,677評論 0 15
  • 秋日澄懷聽蟬擾, 云淡風輕暮色早戈轿。 捲簾惜看落庭花凌受, 恬雅, 歲月有韻正靜好思杯。 彈指一揮人漸老胜蛉, 渺渺, 奈何志疏...
    逸塵居士閱讀 220評論 0 0
  • 請閱讀書中第三張色乾,想一想: 1.在漫步海底平原時腾么,阿龍納斯一行見到了哪些奇特的景象? 2.為什么海底森林是個垂直線...
    喜閱小童閱讀 2,615評論 0 2