Cordova Android Uncaught Funktionsfehler

Ich bin derzeit mit PhoneGap 2.7.0 auf meinem Projekt und Code läuft ohne Fehler auf iOS.Wenn ich versuche, den gleichen Code auf Android laufen (mit Ausnahme der Cordova Javascript-Datei, die ich weiß, ist anders für Android) Ich erhalte diesen Fehler:

05-21 22:02:25.630 1663-1663/com.###.### D/Cordova: onPageFinished(file:///android_asset/www/index.html) 05-21 22:02:25.640 1663-1663/com.###.### D/CordovaLog: Uncaught Function required as first argument! 05-21 22:02:25.640 1663-1663/com.###.### E/Web Console: Uncaught Function required as first argument! at file:///android_asset/www/cordova-2.7.0.js:627 

Hier ist das JavaScript, das ich in index.html verwende:

 <script type="text/javascript"> var app; document.addEventListener("deviceready", function() { app = new AppWrapper(); }, false); </script> 

Ich bin mir nicht sicher, was das Problem ist. Ich hatte dieses Problem vor, aber es hat sich in der Vergangenheit gelöst (schwarze Magie?). Jede Hilfe wäre sehr dankbar.

  • Erhalten Gradle-Fehler "Konnte nicht genügend Platz für Objekthaufen" ständig in Intellij IDEA reservieren
  • Abfangen eingehende SMS-Nachricht und Ändern Sie es
  • Phonegap 1.4.1 WebIntent Plugin Fehler "Klasse nicht gefunden" Android
  • Wie kann man die Cordova-Android-Version eines Cordova / PhoneGap-Projekts überprüfen?
  • Cordova_plugins.js wird nach dem Hinzufügen eines neuen Plugins nicht aktualisiert
  • Importieren Sie das Cordova-Projekt in Android Studio
  • Jquery ajax GET Anforderung, die zweimal ausführt
  • Wie man Youtube Video in Cordova Android App einbetten kann
  • 2 Solutions collect form web for “Cordova Android Uncaught Funktionsfehler”

    Nachdem ich Ripple benutzt hatte, um dieses Problem zu debuggen (sehr empfehlenswert), fand ich einen Zeiger auf eine undefinierte Funktion, die auf einen Ereignis-Listener angewendet wurde (also nicht spezifisch für den deviceready-Aufruf).

    Für zukünftige Entwickler: Überprüfen Sie, ob alle Ihre "addEventListener" -Aufrufe auf vorhandene Funktionen hinweisen. Scheint offensichtlich, aber es passiert.

    Prüfen Sie, ob Sie den richtigen Kontext der Callback-Funktion in Ihrem Code angegeben haben.

    Vergewissern Sie sich, dass Sie "diese" nicht in der Rückruffunktion verwenden. Beispielsweise,

     var app = { init : function() { document.addEventListener("deviceready", this.deviceready, false); }, deviceready : function() { app.appWrapper = this.createAppWrapper();//watch out who is "this", you should use "app" but not "this" }, createAppWrapper : function() { return new AppWrapper(); } }; app.init(); 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.