ios 热更新可行性分析
?Ios熱更新預(yù)言報(bào)告
熱更新簡(jiǎn)述
熱更新是一種各大手游等眾多App常用的更新方式。簡(jiǎn)單來說,就是在用戶通過App Store下載App之后,打開App時(shí)遇到的即時(shí)更新。
2017年3月,蘋果就曾警告部分開發(fā)者違反了《蘋果開發(fā)者計(jì)劃許可協(xié)議》的3.3.2章節(jié)以及《App Store審查指南》2.5.2章節(jié)的規(guī)定,要求開發(fā)者刪除熱更新相關(guān)代碼,并重新提交一個(gè)新的App版本以供審核。
2017年6月,AppStore審核團(tuán)隊(duì)針對(duì)AppStore中“熱更新”的App開發(fā)者發(fā)送郵件,要求移除所有相關(guān)的代碼、框架或SDK,并重新提交審核,否則就會(huì)在AppStore中下架該軟件。
?Ios熱更新實(shí)現(xiàn)的幾種方式
一、JSPatch
熱更新時(shí),從服務(wù)器拉去js腳本。理論上可以修改和新建所有的模塊,但是不建議這樣做。
建議 用來做緊急的小需求和 修復(fù)嚴(yán)重的線上bug。
二、lua腳本
比如: wax。熱更新時(shí),從服務(wù)器拉去lua腳本。游戲開發(fā)經(jīng)常用到。
三、Weex
跨平臺(tái),一套代碼,iOS、Android都可以運(yùn)行。用前端語法實(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。
淘寶干的漂亮,中國在編碼的實(shí)力越來越牛叉了。威武!!!?
四、React Native
不像Weex能一套代碼多端運(yùn)行,需要自己分別做修改。
React Native 可以動(dòng)態(tài)添加業(yè)務(wù)模塊,但無法做到修改原生OC代碼。
JSPatch、lua 配合ReactNative可以讓一個(gè)原生APP時(shí)刻處于可擴(kuò)展可修改的狀態(tài)。
五、Hybrid
像PhoneGap之類的框架, 基本概念和web差不多, 通過更新js/html來實(shí)現(xiàn)動(dòng)態(tài)化,沒有原生的效果流暢。
六、動(dòng)態(tài)庫
可以做demo用,真實(shí)使用的時(shí)候會(huì)被蘋果禁止。
因?yàn)?打包發(fā)到AppStore的ipa安裝包 里的每個(gè)動(dòng)態(tài)庫 都有唯一的編碼,iOS系統(tǒng)會(huì)進(jìn)行驗(yàn)證,所以動(dòng)態(tài)通過網(wǎng)絡(luò)獲取新的動(dòng)態(tài)庫 也用不了。
七、rollout.io
Rollout緊急修復(fù)線上bug。后端有相關(guān)的管理頁面。因?yàn)槭菄獾木W(wǎng)站,然后呢,要FQ才能使用。
八、DynamicCocoa
滴滴iOS的一個(gè)框架,準(zhǔn)備在2017年初開源,與JSPatch比更加智能化,用OC在XCode中寫完代碼,用工具可以自動(dòng)生成可以更新的js文件。
蘋果對(duì)于熱更新的態(tài)度已經(jīng)處理措施
2017年3月9日,部分iOS開發(fā)者收到了蘋果的這封警告郵件:
·??????蘋果認(rèn)為熱更新技術(shù)容易被黑客利用,造成重大安全問題。在官方警告郵件中,也是在進(jìn)行如此描述。
·??????
·??????
·??????
分析
1.目前JSPatch官網(wǎng)給出的結(jié)論是SDK1.7.2以上的版本可以審核通過,但是目前貌似沒人使用,并且是付費(fèi)使用
2.使用React Native,Weex,Hybrid熱更新,項(xiàng)目沒有使用次開源框架,方案不行
3. lua腳本 目前沒有相對(duì)措施
4.使用動(dòng)態(tài)庫進(jìn)行熱更新,也是基于lua腳本的
5. rollout.io 需要翻墻,目前網(wǎng)上的資料顯示無法繞過審核還是
6. DynamicCocoa 目前尚未開源
結(jié)論
目前可以使用JSPatch進(jìn)行熱更新,sdk1.7.2之前會(huì)存在審核不過的情況,大于這個(gè)版本的可以正常使用
總結(jié)
以上是生活随笔為你收集整理的ios 热更新可行性分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机ip地址配置参数,指定电脑的IP地
- 下一篇: LSTM神经网络在证券市场分析上的应用