iOS APP与H5交互的三种方法

 我来答
世纪网络17
2022-07-18 · TA获得超过5947个赞
知道小有建树答主
回答量:2426
采纳率:100%
帮助的人:142万
展开全部

这种方法是利用拦截webView响应的url,对url进行处理,同时把需要执行的方法名和参数都放入url中,实现app和H5之前的方法交互:

这个属性是WKWebView才有的属性,主要是通过WKScriptMessageHandler的代理方法 - (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)message 进行交互。

注意:

这两个方法是成对出现的,每次调用了add就必须调用remove。

1.建立 WebViewJavaScriptBridge 和 WebView 之间的关系。

_jsBridge = [WebViewJavascriptBridge bridgeForWebView:_webView];

2.方法调用

1)oc调js方法(通过data可以传值,通过 response可以接受js那边的返回值 )

2)js调oc方法(可以通过data给oc方法传值,使用responseCallback将值再返回给js)

最后:iOS调用H5方法
UIWebView: NSString *result = [webView stringByEvaluatingJavaScriptFromString:@"javascript:add(3,5);"];

WKWebView: [self.webView evaluateJavaScript:@"show()" completionHandler:^(id _Nullable response, NSError * _Nullable error) { //TODO }];

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式