Call Javascript function From iOS Webview in Angularjs App

Mon problème est que lorsque j'essaie d'appeler une fonction javascript qui existe dans mon application AngularJS à partir d'une UIWebView, cette fonction n'est pas reconnue. Lorsque j'appelle la fonction dans une structure html typique, la fonction est reconnue comme prévu. Exemple fourni ci-dessous:

OBJECTIF C:

- (void)viewDidLoad { [super viewDidLoad]; // CODE GOES HERE _webView.delegate = self; // LOAD THE CHABACORP HOMEPAGE WITH INITIAL UIWEBVIEW NSString *fullURL = @"http://testing.com"; NSURL *url = [NSURL URLWithString:fullURL]; NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; [self.webView loadRequest:requestObj]; } - (void)webViewDidFinishLoad:(UIWebView *)webView{ [_webView stringByEvaluatingJavaScriptFromString:@"testing()"]; } 

CONTRÔLE ANGULARJS:

 'use strict'; angular.module('testing.controllers', []) .controller('Testing', function($scope) { function testing() { alert('testing'); } }); 

HTML de base (TRAVAIL AVEC OBJECTIF COURANT-C):

 <!DOCTYPE HTML> <html> <body> <SCRIPT> function testing() { alert('testing'); } </SCRIPT> </body> </html> 

C'est parce que votre fonction de testing n'est pas disponible sur le marché mondial. Il est uniquement disponible dans votre fonction de contrôleur de Testing . Pour le rendre globalement disponible, vous devez modifier le contrôleur comme étant ceci:

 'use strict'; angular.module('testing.controllers', []) .controller('Testing', function($scope) { window.testing = function() { alert('testing'); } }); 

Je ne peux pas dire que je vous recommande de le faire, mais il est difficile de juger, car nous ne savons pas plus pourquoi vous voulez faire cela.