天天看點

Android探索之旅(第二十五篇)騰訊熱修複架構Tinker與阿裡第三代熱修複架構Sophix對比

本人在開發項目中仍然使用的還是Tinker熱修複架構,在項目中遇到Bug,Tinker都能夠解決,可以說是萬無一失,但是在網際網路時代也必須懷揣着新生的事物必将取代先前的事物的心态,是以就索性內建了Sophix,下面由我來分析一下它們之間的差別

Android探索之旅(第二十五篇)騰訊熱修複架構Tinker與阿裡第三代熱修複架構Sophix對比

從上表格中Sophix熱修複架構相比之前的熱修複架構(Tinker,AndFix,QZone,Robust)有幾項優勢

一.Sophix內建方式極其簡單,相比之前的Tinker及其他的架構配置簡單很多,這無疑大大提升了開發者的開發銷率

二.Sophix更新檔自動生成包生成的更新檔具有安全性,可以概括為兩點

1. 在old.apk與new.apk比較差異之後生成的更新檔包可配置相應的AESKey,是以不用擔心阿裡雲移動平台會利用你們的更新檔做一些非法的事情。

2. 在old.apk與new.apk比較差異之後生成的更新檔包是以.jar呈現給開發者的,這就意味着這種方式能夠在一定條件下避免被營運商的劫持而導緻的更新檔在某些特定的機型熱修複失效的情況。

對比的劣勢

- Sophix平台下發的更新檔在我本人的三星C9Pro上,可以加載出下發的更新檔,但是我強制殺死App之後,更新檔包的代碼就無效了,已經送出GitHub issus 目前未解決原因,之後我會通過Sophix調試工具V3來對錯誤碼進行排查開解決這個問題。

- Sophix平台與Tinker平台是按使用者計量計費,屬于資費平台,使用者<1W皆都免費,當>1W那麼都是一樣的。

如果有哪位大神知道小弟那出現的問題,歡請指教。