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