假设我有一个带有一些javascript函数的UIWebView。我希望这些javascript函数能够从我的应用程序请求信息,我的应用程序应该返回它。我能够使用URL Schemes获取请求但是,我不知道如何将信息返回给javascript函数。
将一个javascript变量注入到UIWebView中,然后再次使用变量作为参数调用javascript函数,这是最好的方法吗?或者我可以使用UIWebView的方法吗?
答案 0 :(得分:2)
通过stringByEvaluatingJavaScriptFromString
注入Javascript绝对没问题。
通过webView:shouldStartLoadWithRequest:navigationType:
How to Properly Call ObjectiveC From Javascript(包括对JS的回调)详细描述了它,包含了来源。
使用Objective-C returnValue的示例JS代码:
NativeBridge.call("objCMethod", ["firstArgument"], function (returnValue) {
if (returnValue) {
// whatever
} else {
// whatever
}
});
答案 1 :(得分:0)
使用异步通信。为Objective C例程提供Javascript函数,使用任何所需的回复参数回调到Javascript。 Javascript回调函数甚至可以是通过URL方案发送到Objective C代码的参数之一。