0

我的 PhoneGap 应用程序面临一些 Objective-C 知识匮乏的问题。

我有一个需要在 Objective-C 中实现的库。这个库有一些我在委托类(称为 CCController)中收到的回调:

[MyLib sharedInstance].delegate = self;

此类在 AppDelegate.m 中实例化,如下所示:

CCController *myClass = [CCController alloc];
[myClass init];

然后,当我的 Lib 发送事件时,我的 CCController 中的函数被调用。在这一点上,我需要使用参数调用我的 Javascript 函数。

我该如何实现呢?

我尝试在 AppDelegate.m 中调用一个函数,其中包含:

NSString* jsString = [NSString stringWithFormat:@"myJSFunction(\"%@\");", stringParameter];
[self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];

但是没有成功,在我的 JS 中什么都没有调用...

我该如何实现呢?感谢帮助 :)

4

1 回答 1

7

您必须创建一个插件并将本机代码放在那里,而不是在AppDelegate.m.

从插件类你可以这样做:

NSString* jsString = [NSString stringWithFormat:@"myJSFunction(\"%@\");", stringParameter];
[self.webView stringByEvaluatingJavaScriptFromString:jsString];

插件开发指南

于 2013-07-19T14:35:48.663 回答