JSBridge是JS和Native之間的一種通信方式,也就是定義Native和JS的通信,其中Native只透過一個固定的橋對象呼叫JS,而JS也只透過固定的橋對象調用Native。
這篇文章將介紹做過混合開發的人都知道Ionic和PhoneGap之類的框架,這些框架在web基礎上包裝一層Native,然後透過Bridge技術的js呼叫本地的函式庫。
JSBridge:聽其取名就是js和Native之前的橋樑,而實際上JSBridge確實是JS和Native之前的一種通訊方式。簡單的說,JSBridge就是定義Native和JS的通訊,Native只透過一個固定的橋對象呼叫JS,JS也只透過固定的橋對象呼叫Native。 JSBridge另一個叫法及大家熟知的Hybrid app技術。
流程:H5->透過某種方式觸發一個url->Native捕獲到url,進行分析->原生做處理->Native呼叫H5的JSBridge物件傳遞回呼。
我們前面講過了原生的WebView/UIWebView控制項已經能夠和Js實作資料通訊了,那為什麼還要JSBridge呢?
其實使用JSBridge有很多方面的考慮:
##Android4.2以下,addJavascriptInterface方式有安全漏掉iOS7以下,JS無法調用Nativeurl scheme互動方式是一套現有的成熟方案,可以完美兼容各種版本,對以前舊版本技術的兼容。JSBridge技術實作
要實作JSBridge,我們需要按以下步驟分析:第一步:設計出一個Native與JS互動的全域橋物件第二步:JS如何呼叫Native#第三個步驟:Native如何得知api被呼叫第四個步驟:分析url-參數與回調的格式第五步:Native如何呼叫JS第6步:H5中api方法的註冊以及格式JSBridge的完整流程可總結為:
以上是JSBridge是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!