JS_call_APP native 与 html的交互
1.*****
特点:下个版本的交互准备使用这个(http://www.knowsky.com/884428.html)
https://github.com/lifei321/JS-OC
http://www.%@.com/Article/14502 @“w2bc”(这个介绍了WKWebView (iOS 8 + )
http://justsee.iteye.com/blog/2036713(使用说明)
(https://lvwenhan.com/ios/462.html 自己动手打造基于 WKWebView 的混合开发框架(三))
注释:
self.js = [view valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; // Undocumented access to UIWebView's JSContext
self.js[@"ios"] = self;
NSArray *frames = [_web valueForKeyPath:@"documentView.webView.mainFrame.childFrames"];
[frames enumerateObjectsUsingBlock:^(id frame, NSUInteger idx, BOOL *stop) {
JSContext *context = [frame valueForKeyPath:@"javaScriptContext"];
context[@"Window"][@"prototype"][@"alert"] = ^(NSString *message) {
NSLog(@"%@", message);
};
}];
2. ***
本篇为大家介绍一个优秀的开源小项目:WebViewJavascriptBridge。实际上是对
[strongWebView stringByEvaluatingJavaScriptFromString:javascriptCommand];这种方法的封装(
WebViewJavascriptBridge-Obj-C和JavaScript互通消息的桥梁 http://www.cocoachina.com/ios/20150624/12248.html)
特点:有消息机制,但就是要修改html,很麻烦,容易出错.服务端html修改代码,客户端升级更是致命。
http://blog.csdn.net/yanghua_kobe/article/details/8209751
3. *****
从iOS7开始 苹果公布了JavaScriptCore.framework 它使得JS与OC的交互更加方便了
特点:不需要修改html,直接在本地调用,但是调用过于分散。
http://www.bubuko.com/infodetail-995265.html
js调用iOS 在下节
http://blog.csdn.net/lwjok2007/article/details/47058795
源代码我们上传到群空间[TestJSOC.zip]有需要的去下载
4。WebViewJavascriptBridge 原理分析
http://www.2cto.com/kf/201503/384998.html
http://blog.sina.com.cn/s/blog_4a540aa70102vfih.html
http://blog.csdn.net/mociml/article/details/47701133