js怎么跟Android和ios进行交互呢?

 我来答
育知同创教育
2016-01-26 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
Android和ios都是用navtive语言编写的app,那么调用js的方法如下:
Native 调用 JS:
本质就一个方法,通过 stringByEvaluatingJavaScriptFromString,都是同步。
1.通常方法:js修通过改doucument的loaction或者新建一个看不见的iFrame,修改它的 src,就会触发回调 webView 的 shouldStartLoadWithRequest,参数 request 的 url 就是新赋值的 location 或者 url,上层截获这个 url 的参数,对此分发即可。 这个都是异步调用的。
如 JS function:
var messagingIframe;
messagingIframe = document.createElement('iframe');
messagingIframe.style.display = 'none';
document.documentElement.appendChild(messagingIframe);
function TestIOSJS(){
messagingIframe.src = "ios/test/click";
};
当触发上面的JS时,webview会收到下面的回调:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSString *url = request.URL.absoluteString;
if([url hasSuffix:@"ios/test/click"]){
//do something you want
return NO;
}
return YES;
}
通过截获这个request的参数就可以做native需要做的事情。
世界狗很践158
2015-09-09 · 超过64用户采纳过TA的回答
知道答主
回答量:120
采纳率:100%
帮助的人:147万
展开全部
如果与OC交互不清楚,但是与Android交互非常熟悉,基本上就是通过桥接的形式,不过还是要了解一下像Android中Java和JavaScript交互,这样感觉起来更清楚。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
彭干彦
2015-10-29 · TA获得超过140个赞
知道小有建树答主
回答量:162
采纳率:85%
帮助的人:126万
展开全部
js跟安卓和ios交互肯定是在webview中的。
下面是安卓代码
String js="javascript:"+js代码;webView.loadUrl(js);
我是做安卓的,ios的应该大同小异。
ios给你找了个列子
http://www.aichengxu.com/view/9947/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式