iOS - H5和原生交互

一、UIWebView

1.JS调用原生方法
    通过 shouldStartLoadWithRequest 代理方法进行拦截指定字符串进行交互

2.JS给原生传值  原生给JS传值
    和Web端协商好,然后定义一个遵循JSExport的代理A,再通过 JSContext 进行
传值操作
从JS拿值;再通过callWithArguments传给JS值>
iOS - H5和原生交互_第1张图片
图片.png
3.原生传值给JS  也可以通过 stringByEvaluatingJavaScriptFromString 进行传值;
iOS - H5和原生交互_第2张图片
图片.png

二、WKWebView

1.添加 ScriptMessageHandler [configuration.userContentController 
addScriptMessageHandler:self name:@"Location"];

2.在didReceiveScriptMessage代理方法中根据message.name去判断拦截,从而
达到 JS调用原生方法;message.body 则是JS 传值给原生的途径;

3.通过 evaluateJavaScript 方法 实现原生向 JS 传值; 
iOS - H5和原生交互_第3张图片
图片.png

你可能感兴趣的:(iOS - H5和原生交互)