Je n'ai pas de réponse sur la façon de procéder à partir de javascript, et contrairement à Mac WebView, l'API UIWebView ne vous permet pas d'exposer arbitrairement le code Objective C en tant que fonctions javascript.
Cependant, vous pouvez utiliser une solution de contournement qui a un effet similaire en utilisant le délégué de charge:
- (BOOL)webView:(UIWebView *)webView
shouldStartLoadWithRequest:(NSURLRequest *)request
navigationType:(UIWebViewNavigationType)navigationType
{
if([[[request URL] scheme] isEqualToString:@"x-your-scheme"])
{
// parse the request and call the appropriate objc code here
[webView stringByEvaluatingJavaScriptFromString:@"send(results);"];
return NO;
}
return YES;
}
Vous déclenchez le délégué de charge en ayant votre code JS charge un « x-votre-système: // » URL .