WebIDE Troubleshooting

Bu çeviri eksik. Bu makaleyi İngilizceden tercüme etmemize yardım edin

Connecting a Firefox OS device

If you're trying to connect a Firefox OS device to WebIDE and it doesn't show up, here are some things you can try:

  • Check your Firefox OS version: make sure your device is running Firefox OS 1.2/Boot2Gecko 1.2 or higher. To check the version, go to the Settings app on the device, then Device Information > Software. If you don't have a high enough version, find your device in the developer phone guide and follow the instructions for upgrading.
  • Enable remote debugging: in the Settings app on the device, go to Device information > More information > Developer.
    • Firefox OS 1.3 and earlier: "Remote Debugging" is just a simple checkbox. Check the box.
    • Firefox OS 1.4 and later: "Remote Debugging" asks you to enable for just ADB, or for ADB and DevTools. Select "ADB and DevTools".
  • Disable screen lock on your device: in the Settings app on the device, go to Screen Lock and unchecking the Lock Screen checkbox. This is a good idea because when the screen gets locked, the phone connection gets lost, meaning it is no longer available for debugging.
  • Make sure you haven't connected an Android phone at the same time as the Firefox OS phone to your computer.
  • Check the USB cable you are using:
    • Try unplugging and replugging in the USB cable.
    • Try plugging the USB cable into a different port on your computer. You may have to alternate between ports.
    • Try a different USB cable. The cables that come with phones are often of poor quality and fail often.
    • Try a shorter USB cable. Long USB cables have been known to not work so well.
  • Try disabling and re-enabling Remote Debugging in the Settings app on the device.
  • If you disabled the ADB Addon Helper, did you successfully run the adb forward command?
  • If you use Linux:
    • Make sure you added add a udev rules file, as documented in step 3 of this guide to setting up an Android device. The idVendor attribute to use for the Geeksphone is "05c6", and this page lists other idVendor values.
  • If you use Windows:
  • If you use Mac OS X:
    • If you're getting timeout errors connecting to both simulators and real devices, you may be unable to connect to localhost due to an empty /etc/hosts file. You can solve the problem by populating the file and flushing DNS cache as described here.
    • If you're an EasyTether user, you will need to uninstall or disable EasyTether: sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext

Unrestricted debugging (including certified apps, built-in apps, apps already installed on a device)

If you are finding that you can't debug certified apps, built-in apps, or apps already installed on a real device, then you may be coming across WebIDE's restricted privileges security policy. To find out more, see the section on Unrestricted app debugging (including certified apps, main process, etc.).

Connecting to Firefox for Android

If you're trying to connect to a Firefox instance running on the Android OS and it doesn't show up, here are some things you can try:

  • Check your Firefox version: make sure your device is running Firefox 36 or higher. WebIDE will not detect older versions automatically, so you need to enable port forwarding and connect to the device port - follow the instructions here.
  • Make sure you have enabled remote debugging in Firefox: open Firefox for Android, open its menu, select Settings, and then check the checkbox at Developer Tools > Remote debugging.
  • Make sure that USB debugging is allowed in the device's developer settings
  • If you still do not see your device in the WebIDE window, try toggling Remote debugging on the phone.
    • Disconnect your device from your computer and turn off Remote debugging on the phone.
    • Reconnect the device and turn on Remote debugging - this restarts the debugger instance on the phone.
    • Try connecting via WebIDE again.

Connecting to other browsers (Chrome, Safari)

WebIDE makes use of Valence (formerly Firefox Tools Adapter) to reach other browsers, like Chrome and Safari. 

If you are having trouble connecting to these other browsers, check the setup steps and other notes for those browsers on the Valence page.

Unable to load project list

If you open WebIDE in one version of Firefox, and then downgrade to a previous Firefox version with the same profile, you may see the error "Unable to load project list" when opening WebIDE in the earlier Firefox version.

This can occur when the storage system that WebIDE uses (IndexedDB) needs to move or restructure its internal files for the newer Firefox version. The project list then becomes effectively inaccessible to older versions of Firefox.

No data has been lost, but you will need to keep using the newest version of Firefox that was used with your profile to get the project list back.

If really want to use the older version of Firefox, you can attempt to delete just the project list in the following way, but this is unsupported and could result in the further problems or additional data loss:

  1. Close Firefox
  2. Find your Firefox profile directory
  3. Find the storage folder inside the profile directory
  4. Under some part of this file tree, there should be files and/or directories that start with 4268914080AsptpcPerjo (a hashed name of the database)
  5. Remove any such files and directories
  6. Start Firefox and WebIDE again

Enable logging

You can also enable verbose logging to gather diagnostics:

  1. Open about:config, and add a new preference called extensions.adbhelper@mozilla.org.sdk.console.logLevel, with the string value all, and set extensions.adbhelper@mozilla.org.debug to true.
  2. In the Add-ons Manager, disable and then re-enable the ADB Helper add-on.
  3. Open the Browser Console and you'll now see console messages prefixed with adb. If the messages don't mean anything to you, ask for help.

Get help

Go to the #devtools room on IRC and we will try to help.