導航:首頁 > 操作系統 > hotpatchandroid

hotpatchandroid

發布時間:2022-08-12 01:37:33

android熱更新框架哪個好

一.基礎知識

1.阿里的熱更新框架已經開源 了。但已經很久沒有更新過新版本了。當前的版本只支持到了 Android 4.4。由於 5.0 起新的 ART 虛擬機、更嚴格的 SELinux 策略以及對 64 位的支持之類的事,使得 Xposed 都在開發上做了很多調整。我不知道 Dexposed 現在是否支持,但至少阿里沒有開源。

2.在本地動態執行遠端下發的代碼是極度危險的行為。利用此方法執行非法代碼等或用於繞過 Google Play 等市場的審查是違反相關協議的,也是對用戶極度不負責任的行為。

3.在一些訪問非常密集的地方使用熱更新可能會對效率產生相對比較大的影響,應該避免使用.

4.我們可以對 Java 的 ScriptEngine 進行一些封裝成為一個 HotPatch 類使得它更適合做熱更新的工作。

5.首先,檢查熱更新補丁的管道一定要建立在 https 上,因為下發代碼是極其危險的,如果被劫持,後果是無法想像的。其次,請求時最好自動帶上 Android 版本、手機型號、地區、版本號等信息,以方便更精確地下發,千萬不能下發錯。

6.Java在運行時載入對應的類是通過ClassLoader來實現的,ClassLoader本身是一個抽象來,Android中使用PathClassLoader類作為Android的默認的類載入器

7.我們的如果想做hotpatch,一定要保證我們的hotpacth dex文件出現在dexElements列表的前面。

二.常用的熱更新技術框架:

基於QQ空間的HotFix →→ 要使用到android dex分包方案→拆分dex的項目的話,可以參考一下谷歌的multidex方案實現.

大眾點評的NuWa←項目補丁自動化做的很完整
alibaba/AndFix

阿里巴巴的DexPosed
dalvik_patch實現multidex
使用React-Native實現app熱部署的一次實踐
alibaba/AndFix

三、常用的熱更新技術框架比較

Advantage
disadavantage
NuWa
1,可以新增類和欄位,
2,兼容到6.0系統
1,基本原理是classloader,類載入器
2,不能修改資源文件,如圖片布局等(可通過動態布局實現)
AndFix
1, 支持Android2.3到6.0版本
2, 支持arm與x86系統架構
3, 支持dalvik和ART的runtime
4, 不需要重啟App即可應用補丁
1,不能新增類和欄位,
2,不能修改資源文件,
3,不能修改manifest文件
4,不能新增成員變數
5,不能使用加固後的apk製作pacth文件
四、github地址
網路的同學的實現 HotFix
點評的同學的實現 Nuwa
阿里的同學的實現 AndFix
另:AndFix對static的支持不太好,下面是試驗的Demo:
添加了一個靜態的欄位addString:

通過AndFix來製作patch會直接報錯:

閱讀全文

與hotpatchandroid相關的資料

熱點內容
一個西方電影講述變異 瀏覽:312
女大學生的沙龍室女演員 瀏覽:738
歐美大片網站 瀏覽:924
周星馳電影七仔小女孩叫什麼 瀏覽:75
印度電影講一男一女在兩輛汽車窗戶上寫字留言 瀏覽:469
ck236編程 瀏覽:392
芭比大電影35部大全公主名字 瀏覽:429
九叔世界酒泉鎮安妮 瀏覽:302
榮耀新手機開機怎麼那麼多app 瀏覽:535
3dmax命令面板上插值沒有了 瀏覽:788
十大必看火影小說排行榜 瀏覽:484
用雲伺服器做視頻播放直播 瀏覽:344
iphone文件里突然多了QQ的文件夾 瀏覽:904
茹茹母乳影視 瀏覽:520
mp4電影下載 免費 瀏覽:591
下棋小男孩電影 瀏覽:673
主角無意間修煉出了念力 瀏覽:59
韓國自由戀愛時代兩個女主 瀏覽:671
阿里雲伺服器遠程連接後如何登陸密碼 瀏覽:543
局城網中網路列印伺服器如何設置 瀏覽:445