以前写过一篇介绍如何使用第三方库在ios上进行js和oc交互调用的文章,链接如下 iOS 使用UIWebView把oc代码和javascript相关联。当时建立项目时,仍然是ios6时代,所以没有原生的交互方法。但是在ios7中,我们有了JavaScriptCore!

JavaScriptCore的基本目的和以前的第三方库的基本目的一致,就是为了实现js和oc之间的相互调用。但是JavaScriptCore更为好用。首先调用js在也不依赖于uiwebview了。其次oc和js的交互逻辑变得简单了,以前你需要如下做:

This may sound like old news to you if you've already integrated native apps with web apps. Couldn't you do all of that before using a UIWebView?
You're absolutely right; in previous versions of iOS, you could pass a JavaScript string to your web view with the stringByEvaluatingJavaScriptFromString: message.
And if you wanted to run Objective-C from JavaScript, you could open a URL with a custom scheme (e.g. foo://) and handle it in the web view's delegate method webView:shouldStartLoadWithRequest:navigtionType.

这样做的后果就是你的代码逻辑会比价复杂,因为你需要自己实现一些JavaScriptCore中自动实现的功能。

关于JavaScriptCore的详细使用,请参看 iOS 7 by Tutorials。

最新文章

  1. Kindle支持哪些格式
  2. sql点滴46—Can't connect to MySQL server (10060)
  3. 对linux的根目录执行强制递归移除
  4. Struts2 Interceptors
  5. File Manager文件管理应用android源码
  6. lintcode:数字组合 II
  7. Lucene 3.0
  8. I.MX6 Android netperf
  9. java 客户端发起http请求
  10. vue2.0+element+node+webpack搭建的一个简单的后台管理界面
  11. 解决distinct与order by 的冲突
  12. 【NOIP2011】 聪明的质监员
  13. 史上最全python面试题详解(四)(附带详细答案(关注、持续更新))
  14. 第十六节:语法总结(3)(C#6.0和C#7.0新语法)
  15. JAX-RS和 Spring 整合开发
  16. PythonStudy——函数的分类 Classification of functions
  17. intellij idea建立maven项目
  18. git 和 github 学习总结
  19. 快速排序之Java实现
  20. Java基础教程(4)--面向对象概念

热门文章

  1. WEB中的cookie
  2. 11.Android之常用对话框AlertDialog学习
  3. .net String.Format数字格式化输出
  4. 洛谷P1908 求逆序对 [归并排序]
  5. cowboy-高性能简洁的erlang版web框架
  6. 5个最好的Python Web开发框架
  7. MySQL 存储过程传参之in, out, inout 参数用法
  8. Linux创建用户命令
  9. --hdu 1800 Flying to the Mars(贪心)
  10. ExtJS学习之路第七步:contentEl与renderTo的区别