OC與JS交互

OC與JS交互,經歷了三個階段,第一個階段,是用JavaScriptCore.framework框架,直接用方法名調起的,但是安卓不能用,所以第二種階段,是加.的,但是由于UIWebView的一些問題(獲取h5必須是在網頁加載完畢中進行,但h5需要獲取地理坐標必須在沒有完全進入頁面的時候進行獲取,所以這樣就會出一些問題),又換成了SDWebView

第一階段:

JavaScriptCore.framework的簡單使用--JS與OC的交互篇

javaScriptCore是一種JavaScript引擎,主要為webKit提供腳本處理能力,javaScriptCore是開源webkit的一部分,他提供了強大的整合能力.下面以JS調用OC方法為例,OC調用JS為例說明.

JSContext, JSContext是代表JS的執行環境,通過-evaluateScript:方法就可以執行一JS代碼

JSValue, JSValue封裝了JS與ObjC中的對應的類型,以及調用JS的API等

JSExport, JSExport是一個協議,遵守此協議,就可以定義我們自己的協議,在協議中聲明的API都會在JS中暴露出來,才能調用

問題一:微信登錄成功之后,返回到應用會出現空白,所以需要把OC調h5放到主線程

OC調JS

需要放到主線程dispatch_async(dispatch_get_main_queue(), ^{

});

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容