So rufen Sie ein Objective-C-Methode von Javascript in einem Kakao/WebKit-app?
Habe ich eine Kakao-app, die mithilfe einer WebView Anzeige einer HTML-Oberfläche. Wie würde ich mich über den Aufruf eines Objective-C-Methode aus eine Javascript-Funktion innerhalb der HTML-Schnittstelle?
InformationsquelleAutor der Frage georgebrock | 2008-09-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist dokumentiert bei developer.apple.com.
InformationsquelleAutor der Antwort Adam Wright
Wenn Sie wollen, tun Sie es in iPhone-apps, die Sie brauchen würden für einen trick, mit dem UIWebViewDelegate Methode shouldStartLoadWithRequest:
Diese api http://code.google.com/p/jsbridge-to-cocoa/ tut es für Sie. Es ist sehr leicht.
InformationsquelleAutor der Antwort
Dass vielmehr die grünen, die Dokumentation von Apple ist ziemlich unbrauchbar für mich, also machte ich einen proof-of-concept der Aufruf von Objective-C-Methoden von javascript und Umgekehrt, Kakao, obwohl die letztere viel einfacher war.
Stellen Sie zunächst sicher, dass Sie den webview als setFrameLoadDelegate:
Müssen Sie sagen, das webview zu beobachten, für ein bestimmtes Objekt, sobald es geladen ist:
Dann das Geschäft der Kommunikation:
Der Schlüssel ist, dass, wenn Sie mehrere Methoden, die Sie möchten, um zu nennen, die Sie brauchen, um Sie alle ausgeschlossen, die in der isSelectorExcludedFromWebScript Methode, und Sie müssen die javascript-Aufruf anzeigen aus, um die ObjC-Methode in webScriptNameForSelector.
Ganze Projekt proof-of-concept-Datei:
https://github.com/bytestudios/JS-function-and-ObjC-method-connector
InformationsquelleAutor der Antwort Michael Diedrick
Habe ich eine Lösung mit NimbleKit. Sie können Anruf-Ziel von C-Funktionen aus Javascript.
InformationsquelleAutor der Antwort Rony