這些天研究了一些oc與js互動的問題,純屬個人了解
oc與js互動是跨平台iOS與javaScript的通信。公司為了開發節約成本,本來安卓,與iOS兩個版本的app開發,利用js通過webView的加載隻需要做一些互動工作就使得javaScript書寫的頁面可以同時在安卓與iOS上使用可謂一舉兩得。
WKWebView裡邊的方法
1.OC中調用js方法(我認為是oc向js中傳值)
使用的是
<span style="background-color: rgb(255, 255, 255);">- (void)evaluateJavaScript:(NSString *)javaScriptString completionHandler:(void (^)(id, NSError *))completionHandler;這個方法</span>
參數1:@param 是調用的js方法,并傳值
參數2:如果
JavaScript
代碼出錯, 可以在
completionHandler
進行處理.
2.js向oc中傳值使用的時WKWebView注冊WKScriptMessageHandler代理
- (
- (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)message;<span style="color:#ffffff;">
</span>
參數2:js向oc傳遞的資訊