WebIDE Problemlösung

Mit einem Firefox-OS-Gerät verbinden

Wenn du mit dem WebIDE eine Verbindung zu deinem Firefox-OS-Gerät herstellen möchtest, das Gerät aber nicht angezeigt wird, prüfe folgendes:

  • Überprüfe die Firefox OS-Version:
    Stell sicher, dass auf Deinem Gerät Firefox OS 1.2/ Boot2Gecko 1.2 oder höher läuft. Um die Version zu prüfen, starte die SettingsApp (Einstellungen) und gehe zu Device Information > Software (Geräteinformationen > Software). Wenn Deine Version zu alt ist, finde dein Gerät im Developer Phone Guide und folge den Anweisungen zum Upgraden.
  • Erlaube das Remote Debugging (Externes Debuggen):
    • Gehe in der SettingsApp (Einstellungen) zu Device Information > More information > Developer > Debugging via USB (Geräteinformation > Weitere Informationen > Entwickler > Debuggen über USB)
      • in Firefox OS 1.3 und früher: "Remote Debugging" ist eine einfache Checkbox um dieses zu aktivieren.
      • in Firefox OS 1.4 und später: "Remote Debugging" fragt ob nur ADB oder ADB und DevTools erlaubt werden sollen. Wähle hier "ADB und DevTools"
  • Deaktiviere das Abschalten des Bildschirms:
    Gehe in den Einstellungen auf deines Gerätes (Settings-App) auf "Bildschirm sperren" und entferne das Häkchen. Warum? Wenn der Bildschirm gesperrt wird, verliert das Gerät die Verbindung und steht für das Remote Debugging nicht mehr zur Verfügung.
  • Achte darauf, dass kein anderes Android-Gerät zur selben Zeit mit dem Computer verbunden ist, ausser dem Firefox-OS-Gerät.
  • Überprüfe das USB-Kabel:
    • Zieh das USB-Kabel heraus und verbinde es erneut.
    • Prüfe das Kabel an einem anderen Rechner und auch an anderen USB-Anschlüssen.
    • Versuche ein anderes USB-Kabel. Die mit dem Gerät mitgelieferten Kabel sind meist von minderer Qualität und fallen oft aus.
    • Versuche ein kürzeres USB-Kabel. Es ist bekannt, dass längere Kabel nicht so gut arbeiten.
  • Deaktiviere und aktiviere erneut das Remote Debugging auf dem Firefox-OS-Gerät.
  • Wenn du das "ADB Addon Helper" deaktiviert hast. Kannst du erfolgreich den Befehl adb forward ausführen?
  • Wenn du Linux nutzt:
    • Stelle sicher, dass du die udev rules so angepasst hast, wie im dritten Schritt der Anleitung Gerät zum Entwickeln vorbereiten. Die idVendor-Eigenschaft für Geeksphone ist "05c6". Weitere Werte für idVendor findest du auf dieser Seite. Starte nun adb devices um sicher zu gehen, dass das Gerät gelistet wird. Wenn du "keine Berechtigung"  hast, starte den adb-Server neu (z.B. adb kill-server;adb start-server).
    • Wenn du das android-tools-adb-Paket von Debian nutzt, kann es sein, dass der ADB Helper verlangt alle existierenden ADB-Server zu schließen. Dieses Paket deaktiviert die TCP-Verbindung, die ADB Helper nutzt.
  • Wenn du Windows nutzt:
    • Du musst alle Treiber wie in Schritt 3 der Anleitung Gerät zum Entwickeln vorbereiten installiert haben. Treiber für Geekphones findest auf der Geeksphone-Website und für Google-Geräte auf der Google-Website.
      Windows 8-Benutzer: Standardmäßig verweigert Windows 8 das Installieren von nicht-signierten Treibern. Bei Problemen, schau dir dieses Tutorial an: "Wie installiert man unsignierte Treiber in Windows 8".
    • Wenn das WebIDE dein Gerät nach all diesen Schritten immer noch nicht erkennt, wirst du wohl die adb_usb.ini editieren müssen.
  • Wenn du Mac OS X nutzt:
    • Treten Timeout-Fehler beim Verbinden mit einem Simulator und dem realen Gerät auf, kannst du dich vermutlich aufgrund einer fehlenden oder falschen /etc/hosts-Datei nicht mit localhost verbinden. Erstelle die Datei und lösche den DNS-Cache, wie hier beschrieben.
    • Bist du ein EasyTether-User, musst du EasyTether deaktivieren oder deinstallieren: sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext

Über Wi-Fi mit Firefox OS verbinden

  • Überprüfe deine Firefox Version: Wi-Fi-Debugging setzt Firefox 39 oder höher voraus, sowie ein Firefox OS-Gerät mit laufendem Firefox OS 3.0 vom 27.03.2015 oder später.
  • Sowohl der Computer als auch das Firefox OS-Gerät müssen mit dem selben Wi-Fi-Netzwerk verbunden werden
    • Der Computer darf nicht über Kabel an den Router angeschlossen sein. Beide Geräte müssen über Wi-Fi verbunden werden.

Über USB mit Firefox für Android verbinden

Wenn du versucht dich mit einer laufenden Firefox Anwendung auf deinem Android-Gerät zu verbinden und dieses nicht angezeigt wird, versuche folgendes:

  • Überprüfe deine Firefox-Version: Firefox für Android muss in Version 36 oder höher vorliegen. Das WebIDE kann ältere Versionen nicht automatisch erkennen, dafür muss Port Forwarding aktiviert werden und mit dem Geräte-Port verbunden werden - folge dieser Anleitung.
  • Überprüfe, ob Externes Debugging aktiviert ist, gehe hierzu in die Einstellungen > Entwicklerwerkzeuge > Externes Debuggen und setzte ein Häkchen.
  • Überprüfe, ob USB Debugging in den Entwickler-Einstellungen deines Gerätes aktiviert ist.
  • Wenn du dein Gerät im WebIDE-Fenster immernoch nicht siehst, versuche Externes Debuggen auf dem Gerät erneut zu aktivieren:
    • Entferne die Verbindung zwischen deinem Computer und dem Gerät und schalte Externes Debuggen aus.
    • Verbinde das Gerät erneut und schalte Externes Debuggen ein -  das startet die Debugger-Instanz auf dem Gerät neu.
    • Versuche erneut eine WebIDE-Verbindung herzustellen.
  • Wenn du Linux nutzt:
    • Stelle sicher, dass du die udev rules so angepasst hast, wie im dritten Schritt der Anleitung Gerät zum Entwickeln vorbereiten. Die idVendor-Eigenschaft für Geeksphone ist "05c6". Weitere Werte für idVendor findest du auf dieser Seite. Starte nun adb devices um sicher zu gehen, dass das Gerät gelistet wird. Wenn du "keine Berechtigung"  hast, starte den adb-Server neu (z.B. adb kill-server;adb start-server).
    • Wenn du das android-tools-adb-Paket von Debian nutzt, kann es sein, dass der ADB Helper verlangt alle existierenden ADB-Server zu schließen. Dieses Paket deaktiviert die TCP-Verbindung, die ADB Helper nutzt.
  • Wenn du Windows nutzt:
    • Überprüfe, ob das Gerät richtig verbunden ist und das es den Google USB Treiber benutzt, der im Android SDK enthalten ist.
  • Wenn du Mac OS X nutzt:
    • Bist du ein EasyTether-User, musst du EasyTether deaktivieren oder deinstallieren: sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext

Über Wi-Fi mit Firefox für Android verbinden

  • Überprüfe deine Firefox Version: Wi-Fi-Debugging setzt Firefox 42 oder höher voraus, sowie ein Android-Gerät mit installiertem Firefox in Version 42 oder höher.
  • Sowohl der Computer als auch das Firefox OS-Gerät müssen mit dem selben Wi-Fi-Netzwerk verbunden werden
    • Der Computer darf nicht über Kabel an den Router angeschlossen sein. Beide Geräte müssen über Wi-Fi verbunden werden.

Verbindung zu anderen Browsern herstellen (Chrome, Safari, iOS)

WebIDE nutzt Valence (Firefox Tools Adapter), um sich mit anderen Browsern, wie Chrome, Safari oder iOS, zu verbinden.

Wenn du Probleme bei der Verbindung mit anderen Browsern hast, überprüfe die Installationsschritte und andere Hinweise für diese Browser auf der Valence-Seite.

Manche Apps sind nicht debuggbar

Wenn du der Meinung bist, dass zertifizierte Apps, eingebaute Apps oder bereits auf einem echten Gerät installierte Apps nicht debuggbar sind, dann kann dies durch die Restricted Privileges Security Policies des WebIDE (dt.: Sicherheitsrichtlinien für beschränkte Berechtigungen) ausgelöst werden. Für mehr Informationen sieh dir Unrestricted app debugging (including certified apps, main process, etc.) (dt.: Unbeschränktes App-Debugging) an.

Die Projekt-Liste kann nicht geladen werden

Wenn du das WebIDE in einer Firefox-Version öffnest und dann zu einer früheren Version von Firefox mit dem selben Profil wechselst, kann es passieren, dass der Fehler "Die Projekt-Liste kann nicht geladen werden" beim Öffnen des WebIDE mit der früheren Version auftritt.

Dieser Fehler tritt auf, da das vom WebIDE genutzte Speicherungssystem in neuere Versionen die Daten verschiebt und restrukturiert. Somit wird die Projekt-Liste unbenutzbar für frühere Versionen

Die Daten gehen dabei nicht verloren, aber du wirst die neueste Version von Firefox nutzen müssen, um deine Projekt-Liste nutzen zu können.

Wenn du wirklich eine ältere Version von Firefox benutzen willst, kannst du versuchen einfach die Projekt-Liste zu löschen, dieser Weg wird jedoch nicht empfohlen und wird nicht unterstützt. Es können Probleme auftreten und Daten verloren gehen.

Anleitung:

  1. Schließe Firefox.
  2. Öffne den Firefox-Profil-Ordner.
  3. Öffne den darin enthaltenen storage-Ordner.
  4. An manchen Stellen des Dateibaums sollten Dateien oder Ordner mit folgendem Namen beginnen: 4268914080AsptpcPerjo  (gehashter Name der Datenbank).
    • Beispielsweise kann solch eine Datei im Ordner /storage/permanent/indexeddb+++fx-devtools/idb sein.
  5. Lösche alle so aussehenden Dateien und Ordner.
  6. Starte Firefox und WebIDE neu.

Logging aktivieren

Du kannst auch die ausführliche Protokollierung aktivieren, um eine genauere Diagnose zu erhalten:

  1. Öffne about:config.
  2. Erstelle eine neue Einstellung, die extensions.adbhelper@mozilla.org.sdk.console.logLevel heißt. und den String-Inhalt all enthält.
  3. Setze den Wert von extensions.adbhelper@mozilla.org.debug auf true.
  4. Öffne den AddOns-Manager, deaktivere und reaktiviere das ADB Helper-AddOn.
  5. Öffne die Browser-Konsole, dort kannst du nun Eintragungen mit dem Präfix adb sehen. Wenn dir diese Eintragungen nichts sagen, dann frage bitte nach Hilfe.

Hilfe bekommen

Gehe in den #devtools room on IRC und es wird versucht dir zu helfen (Vorwiegend englischer IRChat).

Schlagwörter des Dokuments und Mitwirkende

 Mitwirkende an dieser Seite: Micky261, PPElite, Microgamer, ddr-2kpp
 Zuletzt aktualisiert von: Micky261,