サーバーから読み込まれた HTML ページを表示するために UIWebView を使用するアプリがあります。これは、追加のデータをロードする Objective-C 部分を含めてうまく機能しますが、機能しないのは、WebView で実行されている JavaScript にデータを渡すことです。
私が試したことは次のとおりです。
NSString * sigstring = [NSString stringWithFormat:@"updatedSig('%@');", [thisSignature base64EncodedString]];
sigstring = [sigstring stringByReplacingOccurrencesOfString:@"\n" withString:@""];
NSLog(@"WV: %@",[[[(AppDelegate*)[[UIApplication sharedApplication] delegate] viewController] webView] stringByEvaluatingJavaScriptFromString:sigstring]);
updatedSig 関数は、渡されたものは何でもコンソールにエコーします。
ただし、この場合、コンソールにデータがあるはずなのに、コンソールには何も返されません。
他の問題をテストするために、私も試しました
NSString * sigstring = [NSString stringWithFormat:@"updatedSig('%@');", @"AbsolutelyAnything"];
sigstring = [sigstring stringByReplacingOccurrencesOfString:@"\n" withString:@""];
NSLog(@"WV: %@",[[[(AppDelegate*)[[UIApplication sharedApplication] delegate] viewController] webView] stringByEvaluatingJavaScriptFromString:sigstring]);
これは完全に機能し、コンソールに「AbsolutelyAnything」と表示されます。
どんな助けでも大歓迎です。