iOS與JS互動的方法有什麼不同?本篇文章對目前iOS與JS存在的交互作用的方法做了簡單對比,有需要的可以看一看。
只是針對目前存在的互動方式做個比對。不會涉及任何實現。如需知道具體的使用。可自行baidu或Google。
攔截協定是最簡單的互動方式,在Android端和iOS端直接攔截,可以統一web前端的程式碼。 web前端透過在連結中帶上參數。如:
88gongxiang://loginFunc&name=xxx&pwd=123456。透過攔截url的scheme等於88gongxiang。由Native攔截後自行處理。
iOS7之後蘋果推出了JavaScriptCore這個框架,從而讓web頁面和本地原生應用交互起來非常方便,而且使用此框架可以做到Android那邊和iOS相對統一, web前端寫一套程式碼就可以適配客戶端的兩個平台,進而減少了web前端的工作量。
WebViewJavaScriptBridge時目前iOS流行的JS互動框架,WebViewJavaScriptBridge是基於攔截協定進行的封裝。同時支援UIWebview和WKWebview。但需在web前端嵌入對應的程式碼,同時web前端的程式碼需要遵守WebViewJavaScriptBridge的規定,無法做到與Android的統一。
WKWebview是 iOS 8 之後提供的瀏覽器元件,當JS與WKWebview互動時,JS呼叫window.webkit.messageHandlers來傳送訊息呼叫Native。無法做到web端統一程式碼。
以上互動方式,根據不同的需求來決定採用哪種方式,以下可做參考:
如果web端人手不足、或是想做統一處理,可以採用JavaScriptCore、攔截協議的方式。如果是簡單的互動的直接上攔截協議 的方式就行。
第三方框架WebViewJavaScriptBridge、WKWebview則需要web端的配合。
只是針對目前存在的互動方式做個比對。不會涉及任何實現。如需知道具體的使用。可自行baidu或Google。
相關推薦:
#javascript與IOS ObjectC互動詳解及實作程式碼
以上是iOS與JS互動的方法之間的比較介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!