如何将信息返回到Objective-C中的javascript函数

How do I return information to javascript function in Objective-C?

本文关键字:Objective-C 中的 javascript 函数 返回 信息      更新时间:2023-09-26

假设我有一个带有一些javascript函数的UIWebView。我希望那些javascript函数能够从我的应用程序请求信息,我的应用应该返回它。我可以使用URL Schemes获得请求,但是,我不知道如何将信息返回到javascript函数。

将javascript变量注入UIWebView,然后将该变量作为参数再次调用javascript函数,这是最好的方法吗?或者有什么方法可以用于UIWebView?

通过stringByEvaluatingJavaScriptFromString注入Javascript是完全可以的。

另一个方向最好通过webView:shouldStartLoadWithRequest:navigationType: 处理

如何正确调用ObjectiveC From Javascript(包括对JS的回调)对其进行了详细描述,并包含了源代码。

使用Objective-C返回值的示例JS代码:

NativeBridge.call("objCMethod", ["firstArgument"], function (returnValue) {
    if (returnValue) {
      // whatever
    } else {
      // whatever
    }
});

使用异步通信。为Objective C例程提供一个Javascript函数,以便用所需的任何回复参数回调到Javascript中。Javascript回调函数甚至可以是通过URL方案发送到Objective C代码的参数之一。