在熱更新方案里面,阿里巴巴的AndFix因為”立即生效”這樣的特性顯得非常的出眾,但是兼容性一直是它的硬傷,看到AndFix的issue列表,就讓很多公司望而卻步。
最近阿里巴巴以一個非常優雅的方式解決了兼容性這個問題,這個方案的競爭力大增。然而阿里巴巴并沒有在開源的AndFix中fix這個兼容性的問題,而是另起爐灶,弄了一個Sophix,而且 綁定百川后臺,并不開源。
手機淘寶技術團隊MTT的博文Android熱修復升級探索非常詳細地描述了這個解決方案,非常優雅,而且簡單。
地瓜根據這篇文章在AndFix5.0的基礎上fix了兼容性問題。可以看到,現在只要非常非常少的NDK代碼。具體的代碼的fix在dlmu2001/AndFix這里。
aar在https://github.com/dlmu2001/AndFix/tree/master/outputs這里,用這個aar替換alibaba AndFix的aar就可以。
如果你想要的也僅僅是解決AndFix的兼容性問題,而不是切換到Sophix,這個patch一定是你想要的。
https://dlmu2001.github.io/android/2017/06/10/AndFix-patch.html