安卓的增量更新

作爲通用安卓應用,迭代開發是很常見的一種開發模式。誰也不能保證發出去的app永遠不會被發現bug,永遠不會有新需求,而下載更新成了這一切的前提。

(插個話:我很喜歡google退出的volley用作網絡框架,但是volley對文件下載支持不好,也就是無法被用來做下載更新,那這種情況下我是該放棄實用volley改用更全面的網絡框架呢,還是在同一個應用中集成兩套網絡框架,或者是在下載更新這裏就直接自己簡單利用原生類寫幾個下載函數就算了,希望能有前輩幫我指導一下)


google在4.x的版本中引入的特性,smart app updates,也就是通常被俗稱的增量更新,原理大概就是:實用工具在服務端生成差分包,在客戶端下載對應的差分包,然後再合成差分包。

首先生成差分包:

使用HDiff 或者BSDiff工具生成差分包。需要對之前發出過的每個低版本生成相應的差分包,也即發佈3.0版本需要正對1.0和2.0版本的用戶分別生成查分包。

然後是合成差分包:

客戶端下載得到差分包後需要使用HDiffPatch或bspatch來合成apk然後安裝即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章