我知道要在iPhone上执行此操作,您需要捕获链接请求(根据我的其他iPhone问题UIWebView Expose JavaScript),您可以轻松地执行相反的操作并从Obj-C代码访问JavaScript.
但是,我希望JavaScript能够调用某些Objective-C函数,这些函数会以某种方式在WebKit中注册.我认为你可以做到这一点比捕获iPhone上的链接更好,就像在Mac OS X上我们可以访问完整的WebKit一样.
我希望基本上反过来使用Objective-C中的JavaScript
更新: 例如,可以在JavaScript中公开objective.external.objcmethod();
看看我对这个问题的答案非常相似.我提供的代码可以向您显示如何做您想做的事情.
实际上,您需要根据文档实现WebScripting协议.
您不需要定义自己的URL方案处理程序,这只是iPhone应用程序所必需的.在Mac上,该WebView
对象比UIWebView
iPhone上强大了许多个数量级,并允许从JavaScript到Objective-C的完全桥接,反之亦然.