关于混合开发,oc与js互相通信的方法总结:

网上找了好多地方,发现就这篇博客关于avascriptCore.framework写的的最好。javascriptCore.framework很灵活,很强大。内容较多就不说了,看人家写的博客,很不错。

http://blog.iderzheng.com/ios7-objects-management-in-javascriptcore-framework/

    可以参考这里学习。

 

跨平台cordova框架,提供了好多插件,对开发者以js形式提供调用各种原生功能,比如摄像头,罗盘仪之类的本机硬件的。你还可以自己定义插件,通过js调用本地代码。他还可以提供一个打包app。这个呢个人感觉就是适用于以h5为主,原生代码辅助的基础上,一套代码在各个平台上。比较方便不懂原生开发又想省钱的公司。就是目前,用户体验太差,而且cordova文档更新简直太慢,一路学习都是坑。俗话说的“爱一个人让他学习phonegap,恨一个人就让他学习phonegap吧”

参考地址 cordova官网文档:http://cordova.apache.org/docs/en/5.0.0/

 

oc第三方WebViewJavascriptBridge;这个是封装好的一个oc开源小框架,提供了2套oc和js之间互相调用的方法。这个比较合适混合项目,oc为主的项目。参考见WebViewJavascriptBridge的github上的网址:

https://github.com/marcuswestin/WebViewJavascriptBridge

 

第四种方法,在 webview的代理里根据自动以URL协议来js调oc, 不是很推介这个,这个必须在这个协议里才可以实现通信,如果多几次调用,里面会出现难以想象个if判断语句,这种很可怕。。

 

综合以上,鄙人觉得还是使用WebViewJavascriptBridge或者javascriptcore,比较合适混合开发。

假如是以为h5为基础的项目就用cordova。

至于第4种方法,看情况而定了。

 

文章来自:http://www.cnblogs.com/canghaixiaoyuer/p/4711855.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3