Continuer à installer des applications sur Firefox OS avec WebIDE

OK ça n’intéressera probablement pas grand monde, mais ça m’a servi alors je partage l’info.

Le Marketplace de Firefox OS est fermé depuis quelques mois, donc on ne peut plus installer d’applications par ce biais. Par contre, son contenu a pu être sauvegardé via un petit script que j’avais écrit.

Oui mais, depuis quelques temps, il est impossible d’installer ces applications (ou n’importe quelle autre) sur des appareils Firefox OS depuis WebIDE. Soit l’appareil n’est plus détecté, soit on a le message d’erreur : « La version de l’environnement connecté est ancienne (44.0). La version minimale prise en charge est (52.0a1). Cette configuration n’est pas prise en charge et peut entraîner un arrêt des outils de développement. Veuillez mettre à jour l’environnement connecté ». Et on ne peut évidemment plus upgrader Firefox OS.

Après quelques essais, cela vient des versions récentes de l’extension ADB Helper.
On peut heureusement revenir à une version plus ancienne en l’installant depuis https://ftp.mozilla.org/pub/labs/fxos-simulator/adb-helper/linux64/. La version 0.10.1 fonctionne avec Firefox OS 2.5.
Oui, sauf que cette version n’est plus compatible avec les versions récentes de Firefox (j’ai testé en version 60).
Donc il faut se remettre une version plus ancienne. J’ai mis une version 52.8 ESR (en téléchargeant et décompressant n’importe où l’archive .tar.bz2 à partir de https://www.mozilla.org/en-US/firefox/organizations/all/#legacy).

Par contre, ça fait 2 versions de Firefox sur la même machine : il faut éviter qu’elles utilisent le même profil. Donc je lance d’abord le profileManager via :

./firefox --ProfileManager --no-remote

J’y crée un nouveau profil nommé « firefox52ER »
Puis je me crée un lanceur avec le contenu suivant :

./firefox -p firefox52ESR --no-remote

(le -no-remote permet de lancer une fenêtre en 52ESR en même temps qu’une fenêtre en 60)

Il faut ensuite (dans la version 52ESR) désactiver l’installation automatique des mises à jour (dans les Préférences : Avancé -> Mises à jour). Sinon il serait upgradé en 60ESR dans quelques mois. Et pareil pour ADB Helper : dans la page des extensions, en cliquant sur « Plus » de la ligne d’ADB Helper, il faut désactiver les mises à jour automatiques. Évidemment, je vous recommande de n’utiliser cette version de Firefox que pour l’installation d’applications Firefox OS, PAS pour aller sur Internet (puisque cette version deviendra rapidement vulnérable sans mises à jour)

NB: pour fonctionner avec Firefox OS 2.0 (oui, oui, j’ai encore un appareil avec cette version), il faut downgrader encore plus ADB Helper : j’ai pu le faire marcher avec la version 0.8.9, mais peut-être qu’une 0.9.x marcherait aussi.

9 réflexions sur « Continuer à installer des applications sur Firefox OS avec WebIDE »

  1. bonjour,

    merci pour les retardataires, cependant pouvez détailler un peu comment installer une apps.
    je cherche a installer le  » file manager » je n’y arrive point.

    j’arrive a faire tourner firefox esr 52.8, la prise en charge de l’Open C sous Web IDE.

    merci d’avance,

    Nicolas

    1. Si vous avez le fichier .zip de l’application (par exemple file-manager-1.0-beta2.20150315.zip), il faut d’abord le dézipper quelque part sur votre ordinateur.
      Ensuite, lancer firefox ESR 52, puis son WebIDE, et connecter le ZTE Open C en USB. Sur le téléphone, dans les paramètres développeur, il faut activer « ADB et outils de développement » dans la catégorie « Débogage USB ».
      Dans WebIDE, en haut à droite, le nom de l’appareil devrait s’afficher en-dessous de « Périphériques USB ». Si ce n’est pas le cas, il manque peut-être les drivers (sous Windows) ou la configuration udev (sous Linux).
      En cliquant sur le nom de l’appareil, cela devrait demander sur le téléphone si on accepte ou non : accepter.
      Ensuite, dans WebIDE, cliquer sur « Ouvrir une application empaquetée », et sélectionner l’emplacement où l’application est dézippée (il devrait s’y trouver un fichier nommé « manifest.webapp »). L’application devrait s’afficher au centre de la fenêtre WebIDE. Il suffit ensuite de cliquer sur le bouton « lecture » (icône en forme de triangle en haut de la fenêtre) : ça devrait transférer l’application sur le téléphone et la lancer.
      On peut ensuite débrancher l’appareil : c’est fini!

      NB : à propos de cette application particulière (File Manager, d’identifiant 474085), je tombe souvent sur un bug qui empêche de scroller dans le contenu d’un répertoire, ce qui est rapidement problématique. Dommage parce que cette appli m’a semblé être la meilleure de sa catégorie. En contournement, j’utilise parfois « SD Explorer » (identifiant 473585) qui n’a pas ce bug (mais aussi moins de fonctionnalités)

  2. Bonjour,

    impec ! de la bombe cette OS est vraiment le top même si Mozilla la laisser tomber.

    Merci de votre réponse rapide et claire ; j’ai du mal mis prendre pour lancer le fichier de l’APP (erreur DB….)

    Une autre question, est-il possible de modifier la mise en jour 2.5 (fichier update.zip) par exemple dans un premier temps pour mettre d’autre fond d’écran que ceux proposer (j’ai une erreur signature no check lors d’un test)

    Merci beaucoup !
    Il reste encore du monde sur Open C – FFOS

    Nicolas

    1. Cool, tant mieux si ça rend service.
      De mémoire, les fichiers update.zip contiennent un checksum de chaque fichier, et sont effectivement signés.
      Il est probable qu’il y ait moyen de générer un update.zip modifié, ou (plus simplement) un autre zip installé à part qui irait modifier le nécessaire (quitte à ce qu’il ne soit pas signé, lui). Je n’ai pas trop creusé.
      Mais, si ça ne concerne que peu d’appareils, ça peut aussi se faire via adb shell (quitte à scripter les opérations concernées)

  3. Bonjour, super info Merci ! (one touch fire E avec FFOS 2.0).
    J’ai un problème avec une appli : https://github.com/elninosi/BackupApp-FXOS
    Je ne peux pas importer l’app. Erreur : IDB._db is null
    Y aurait-il une solution ?
    Par avance merci

  4. Bonjour,

    Malgré tous les bons conseils, je n’arrive pas à faire apparaitre mon zte open c sous wide IDE.

    Quand je fais dans un terminal adb devices, la réponse est toujours : List of devices attached
    1a12c09 no permissions (verify udev rules); see [http://developer.android.com/tools/device.html]

    J’ai modifié les udev rules en suivant ce tuto : https://sites.google.com/site/zteopenfirmware/adb

    J’ai même rajouté une ligne avec pour idvendor 1a12c09 en désespoir de cause.

    Je suis sous linux mint et la version de firefox os est la 2.2.0.0, les paquets pour ADB sont installés sur le PC et le mode débogage mis sur le smartphone.

    Si quelqu’un a une idée… je ne sais plus quoi faire.

    Merci

    1. Il est probable que ça vienne effectivement de la configuration udev.
      Le tuto mentionné concerne l’appareil « ZTE Open ». Si c’est un « ZTE Open C » que vous avez, il s’agit bien de deux modèles différents.
      Pour le ZTE Open C, voici où trouver la configuration nécessaire : https://developer.mozilla.org/en-US/docs/Archive/B2G_OS/Phone_guide/ZTE_OPEN_C#Manual_updates

      S’il s’agit d’un autre appareil, il faut trouver l’idVendor (et éventuellement l’idProduct) qui lui correspond. Soit en cherchant sur Internet, soit en le branchant et en regardant les logs du kernel (en cherchant une ligne du type « New USB device found, idVendor=18d1, idProduct=4ee7 »). Et ne pas oublier de redémarrer udev après chaque changement.

  5. merci pour cet article : voulant bricoler des petites applications que j’avais mis dans l’Open-C il y a longtemps, ça m’a fait gagner un temps fou; pour FxOS-2.2 et FxOS-1.3, ça marche bien avec firefox-52.9.0ESR (32bits), adb-helper-0.9.2 et adb&fastboot pour Lubuntu-32bits obtenus par synaptic.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *