現(xiàn)在Hybird這塊,網(wǎng)上也有很多文章,最近研究了下,分享給大家。
什么是Hybird技術(shù)?
1、一般是指WebView和Native技術(shù)混合而成的一套技術(shù)方案
2、也可以理解成,非Native技術(shù)與Native技術(shù)的混合開(kāi)發(fā)
現(xiàn)在的Hybird有幾種實(shí)現(xiàn)方式:
1、UIWebView、WKWebView 直接使用的是網(wǎng)頁(yè)與OC交互(cordova與phonegap是使用該方案)(本文沒(méi)有對(duì)該方案進(jìn)行講解)
2、數(shù)據(jù)驅(qū)動(dòng)、腳本驅(qū)動(dòng)(RN、微信小程序用的好像都是這種原理)
現(xiàn)在對(duì)于使用了webView實(shí)現(xiàn)的hybird技術(shù)大家都知道它的優(yōu)勢(shì)與劣勢(shì)
優(yōu)勢(shì)是 可以熱更新,直接WEB前端人員也能開(kāi)發(fā),擅長(zhǎng)復(fù)雜的內(nèi)容排版
劣勢(shì)是 體驗(yàn)沒(méi)有原生應(yīng)用流暢
本文重點(diǎn)是說(shuō) 數(shù)據(jù)驅(qū)動(dòng)、腳本驅(qū)動(dòng),好處是能熱更新,體驗(yàn)也更好,因?yàn)樗际巧稍鷳?yīng)用,和WebView完全不一樣
什么是數(shù)據(jù)驅(qū)動(dòng)?
數(shù)據(jù)驅(qū)動(dòng)說(shuō)的是 我們App通過(guò)下載服務(wù)器端的json文件(里面定義了我們的UI布局樣式,簡(jiǎn)單的業(yè)務(wù)功能)然后本地解析動(dòng)態(tài)創(chuàng)建相應(yīng)的UI。
什么是腳本驅(qū)動(dòng)?
腳本驅(qū)動(dòng)說(shuō)的是 通過(guò)OC中的JavaScriptCore實(shí)現(xiàn)JS與OC的交互,一些簡(jiǎn)單的功能能放到JS中處理。
效果演示
默認(rèn)打開(kāi)效果:
點(diǎn)擊測(cè)試1按鈕的效果: