Android熱更新實現方式

tikeyc發表於2019-03-04

hotfix.jpg

一、Tinker

tinkerpatch.com/

github.com/Tencent/tin…

github.com/Tencent/tin…

別人寫的微信tinker補丁管理,後端程式碼+客戶端sdk Demo: github.com/baidao/tink…

我自己寫一個demo:github.com/tikeyc/TTin…

Tinker是微信官方的Android熱補丁解決方案,它支援動態下發程式碼、So庫以及資源,
讓應用能夠在不需要重新安裝的情況下實現更新。當然,你也可以使用Tinker來更新你的外掛。

它主要包括以下幾個部分:
1.  gradle編譯外掛: tinker-patch-gradle-plugin
2.  核心sdk庫:tinker-android-lib
3.  非gradle編譯使用者的命令列版本: tinker-patch-cli.jar
複製程式碼

二、阿里巴巴

alibaba.png

Sophix

help.aliyun.com/document_de…

移動熱修復(Mobile Hotfix)是阿里雲提供的全平臺App熱修復服務方案。
產品基於阿里巴巴首創hotpatch技術,提供最細粒度熱修復能力,讓您無需等待實時修復應用線上問題。
1.緊急修復線上問題。
2.快速釋出新鮮功能。
複製程式碼
阿里百川Hotfix

已經遷移至阿里雲Sophix 請直接使用上面的阿里雲的Sophix baichuan.taobao.com/portal/newD…

AndFix

github.com/alibaba/And…

使用教程:www.jianshu.com/p/907a2c599…

全稱Android hot-fix,是alibaba的Android熱修復框架
支援Android 2.3到6.0的版本,支援arm與X86系統架構,支援Dalvik和ART Runtime。
AndFix的原理就是方法的替換,把有bug的方法替換成補丁檔案中的方法
複製程式碼

三、Amigo

github.com/eleme/Amigo github.com/eleme/Amigo…

一個Android 平臺的hotfix 庫, 支援熱更新,支援熱修復
支援所有裝置,從 ECLAIR 2.1 to Nougat 7.1
甚至可以支援下個Android release的版本, 不管改動是否很大。
不支援Android 3.0
複製程式碼

hotfix_list.jpg

相關文章