2021-09-28 11:30:00 來自于應(yīng)用公園
安卓熱門更新
安多伊德一側(cè)的熱點(diǎn)在15年內(nèi)相當(dāng)熱。曾經(jīng)有過類似女媧的方法,比如Dexposed,Anfix和Anfix,Qzone超級補(bǔ)丁,大眾點(diǎn)評的女媧,百度財(cái)經(jīng)的rocooFix,美團(tuán)的餓了么和健壯之友。
IOS熱更新
從技術(shù)角度來說,在iOS上做原生動態(tài)比安卓更容易。IOS開發(fā)語言Objective-C本身就是動態(tài)的,運(yùn)行時(shí)可以隨意替換方法。在運(yùn)行時(shí)加載動態(tài)庫是一項(xiàng)古老的技術(shù)。只要我將增量代碼和資源打包到一個(gè)框架中,動態(tài)分配運(yùn)行時(shí)加載,修復(fù)bug,添加函數(shù),完全失去性能,這一切就都結(jié)束了。
但是蘋果封了加載動態(tài)庫的功能。動態(tài)庫在加載之前必須與安裝包一起簽名,在分發(fā)之前不能通過其他方式簽名。
所以有像waxPatch和JSPatch這樣的解決方案,還有ReactNative和Weex,它們不局限于熱修復(fù)bug,而是可以釋放主要功能。后來,有了針對釣魚愛好的DynamicCocoa解決方案和OCScript
至此,我們不得不說說熱更新的技術(shù)原理。
以JAVA為例。
技術(shù)派:
原生,代表阿里的Dexposed、AndFix和騰訊的內(nèi)部解決方案KKFix
Java代表Qzone的超級補(bǔ)丁,公眾評論的女媧,百度金融的rocooFix,美團(tuán)的餓了么和健壯的朋友。
原生學(xué)校和Java學(xué)校各有利弊。具體區(qū)別請參考上面。其實(shí)從來沒有較好的解決辦法,只有適合自己的。
獲取免費(fèi)應(yīng)用開發(fā)解決方案和詳細(xì)報(bào)價(jià):