iOS熱更新-8種實(shí)現(xiàn)方式

一、JSPatch

官網(wǎng):http://www.jspatch.com? 怎么使用官網(wǎng)文檔寫的很清楚。

熱更新時(shí),從服務(wù)器拉去js腳本。理論上可以修改和新建所有的模塊,但是不建議這樣做。

建議 用來(lái)做緊急的小需求和 修復(fù)嚴(yán)重的線上bug。

二、lua腳本

比如: wax。熱更新時(shí),從服務(wù)器拉去lua腳本。游戲開發(fā)經(jīng)常用到。

三、Weex

跨平臺(tái),一套代碼,iOS、Android都可以運(yùn)行。用前端語(yǔ)法實(shí)現(xiàn)原生效果。比React Native更好用。

weex基于vue.js,ReactNative使用React。

ReactNative安裝配置麻煩。 weex安裝cli之后就可以使用。

react模板JSX有一定的學(xué)習(xí)成本,vue和常用的web開發(fā)類似,模板是普通的html,數(shù)據(jù)綁定用mustache風(fēng)格,樣式直接使用css。

淘寶干的漂亮,中國(guó)在編碼的實(shí)力越來(lái)越牛叉了。威武!!!

四、React Native

不像Weex能一套代碼多端運(yùn)行,需要自己分別做修改。

React Native 可以動(dòng)態(tài)添加業(yè)務(wù)模塊,但無(wú)法做到修改原生OC代碼。

JSPatch、lua 配合React Native可以讓一個(gè)原生APP時(shí)刻處于可擴(kuò)展可修改的狀態(tài)。

五、Hybrid

像PhoneGap之類的框架, 基本概念和web差不多, 通過(guò)更新js/html來(lái)實(shí)現(xiàn)動(dòng)態(tài)化,沒有原生的效果流暢。

六、動(dòng)態(tài)庫(kù)

可以做demo用,真實(shí)使用的時(shí)候會(huì)被蘋果禁止。

因?yàn)?打包發(fā)到AppStore的ipa安裝包 里的每個(gè)動(dòng)態(tài)庫(kù) 都有唯一的編碼,iOS系統(tǒng)會(huì)進(jìn)行驗(yàn)證,所以動(dòng)態(tài)通過(guò)網(wǎng)絡(luò)獲取 新的動(dòng)態(tài)庫(kù) 也用不了。

七、rollout.io

Rollout緊急修復(fù)線上bug。后端有相關(guān)的管理頁(yè)面。因?yàn)槭菄?guó)外的網(wǎng)站,然后呢,要FQ才能使用。

八、DynamicCocoa

滴滴iOS的一個(gè)框架,準(zhǔn)備在2017年初開源,與JSPatch比更加智能化,用OC在XCode中寫完代碼,用工具可以自動(dòng)生成可以更新的js文件。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容