3

我已将 XCode 更新到 v4.4,并开始在 PhoneGap (Cordova 1.9.0) ChildBrowser 插件中收到警告,而 v4.3 从未出现过。(我的代码中没有其他任何更改。)当我看到这些警告时,我拉出了最新版本的 ChildBrowser 插件,这也没有使警告消失。

无论如何...在 ChildBrowserCommand.m 中:

-(void) onClose
{
    NSString* jsCallback = [NSString stringWithFormat:@"window.plugins.childBrowser.onClose();",@""];
    [self.webView stringByEvaluatingJavaScriptFromString:jsCallback];
}

-(void) onOpenInSafari
{
    NSString* jsCallback = [NSString stringWithFormat:@"window.plugins.childBrowser.onOpenExternal();",@""];
    [self.webView stringByEvaluatingJavaScriptFromString:jsCallback];
}

这些中的每一个都会给出“格式字符串未使用的数据参数”警告。这是有道理的,因为@""即使它有一个值,也没有地方可以将它放入格式字符串中。

我不是 Objective-C 专家,但我意识到我可以通过删除,@""调用中的 来摆脱警告。

只是发布以防万一有人可以解释为什么在更新到 XCode 4.4 后开始出现此问题,以及是否/如何将其标记为 GitHub 上的 iOS PhoneGap ChildBrowser 插件的问题。

4

1 回答 1

0

我遇到了同样的问题,我不得不承认我没有注意到您的回答,所以:我不知道为什么要修复它并且很高兴知道,但这就是修复。要解决此问题,请使用以下代码:

-(void) onClose
{
    NSString* jsCallback = [NSString stringWithFormat:@"window.plugins.childBrowser.onClose();"];
    [self.webView stringByEvaluatingJavaScriptFromString:jsCallback];
}

-(void) onOpenInSafari
{
    NSString* jsCallback = [NSString stringWithFormat:@"window.plugins.childBrowser.onOpenExternal();"];
    [self.webView stringByEvaluatingJavaScriptFromString:jsCallback];
}
于 2012-08-27T09:04:02.983 回答