Ich habe Probleme, auf appView
von der neuesten Cordova-Version für Android (5.0.0) zuzugreifen.
Beispiel: Ich möchte eine JavaScript-Schnittstelle zu meiner App hinzufügen. Vor dieser Version habe ich diese Codezeile geschrieben:
%Vor% Und dann das WebAppInterface
:
Jetzt funktioniert es einfach nicht. Hat Cordova kürzlich etwas verändert? Ich habe wirklich keine Ahnung, was ich tun soll.
In beiden Fällen (frühere Version und neue) hat meine Hauptaktivität diese Struktur:
%Vor%Nachdem ich Tage lang nach einer Lösung gesucht habe, habe ich endlich die App zum Laufen gebracht.
Cordova hat den Zugriff auf Android webView
geändert. Entwickler, die Cordova 5.0.0 und neuere Versionen verwenden, müssen diese Zeile zu ihrer Hauptaktivität hinzufügen:
Und dann ruf einfach wie üblich wV an. Um beispielsweise eine Javascript-Schnittstelle hinzuzufügen:
%Vor%Ich hoffe, dass diese Antwort anderen Menschen helfen wird, die über dieses neue Update verwirrt sind.
Ich wollte schon aufgeben, bevor ich deine Antwort gefunden habe, was mir bei einem verwandten Problem geholfen hat - danke, josemmo.
Vielleicht wird das anderen helfen: Nach dem Update auf Cordova 5 / Android 4 konnte ich die shouldOverrideUrlLoading-Methode meines WebViewClient nicht auslösen, da ich den WebViewClient auf einem neu erstellten WebView gesetzt habe
%Vor%in der onCreate-Methode hat nichts bewirkt.
Also war die Lösung, kein neues WebView zu erstellen, sondern das gegossene appView AND engine wie folgt:
%Vor%Die benutzerdefinierte WebViewClient-Klasse benötigt dann einen Konstruktor:
%Vor%Ich bezweifle, dass dies so gemacht werden sollte, aber zumindest funktioniert es.