Mam nadzieję, że będę mógł korzystać z PhoneGap dla mojej aplikacji. Będę musiał zbudować niestandardowy protokół/wtyczkę, aby móc wywoływać metody natywne z Javascript. Wiem, że możesz wywołać funkcję sukcesu w JavaScript, gdy natywny kod zwróci.Czy można wywołać funkcję javascript z natywnego kodu (nie w wywołaniu zwrotnym) za pomocą PhoneGap i iOS?
To, co muszę zrobić, to wywołać funkcję javascript z natywnego kodu. Zasadniczo aplikacja połączy się z aplikacją towarzyszącą OSX w sieci lokalnej, a kiedy aplikacja OSX wysyła dane do aplikacji iOS, jest przetwarzana w metodzie C, muszę być w stanie wysłać wynik do PhoneGap/javascript i zrobić coś z nim w WebView.
Czy to możliwe? Mogłem tylko znaleźć informacje na temat wywoływania natywnego z javascript, a nie na odwrót.
Dzięki, Thomas
Korzystanie kod Odpowiedź poniżej tutaj:
MyPhoneGapPlugin.m
- (void)onSocket:(AsyncSocket *)sock didConnectToHost:(NSString *)host port:(UInt16)port {
NSLog(@"Connected To %@:%i.", host, port);
NSString* jsString = [NSString stringWithFormat:@"alert(connected to: %@);", host];
[theWebView stringByEvaluatingJavaScriptFromString:jsString];
[self readWithTag:2];
}
Dając mi błąd „Unknown 'theWebView odbiornik' nie znaczy 'UIWebView' ?
UPDATE: znalazłem odpowiedź: Korzystanie z pomocnika PhoneGap mogę napisać coś takiego ...
[super writeJavascript:@"alert('connected');"];
Czy możesz proszę rozwinąć swoją odpowiedź. Mam ten sam problem i jestem nowy w Cordovie. Wywołałem go z MainViewController, a także z mojej wtyczki Phonegap, nie odpowiedział w widoku internetowym. Czy ich coś mi brakuje? – bhuwansahni
@bhuwansahni Obawiam się, że cordova mogła się bardzo zmienić od czasu, gdy to zrobiłem, więc nie jestem do końca pewien, co będzie potrzebne teraz. Mogłem to tak nazwać z dowolnej metody w mojej aplikacji - może sprawdź ten artykuł na temat dokumentów, aby uzyskać więcej informacji: http://docs.phonegap.com/en/2.0.0/guide_plugin-development_ios_index.md. html – tsdexter