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 に答える