Fermer
Développement

Firefox OS offre maintenant un intelligent support à Cordova

Cela semble fou. Cordova, alias PhoneGap, est un système qui permet aux applications Web de fonctionner sur les téléphones mobiles comme des applications natives. Mais, depuis l’évènement de Mozilla au Mobile World Congress à Barcelone à la fin du mois de décembre, nous avons appris que Cordova supporte maintenant Firefox OS. Et pourtant, les “applications natives” de Firefox OS sont déjà des applications web. Quel est donc l’intérêt de cette annonce ?

Si au premier abord cela peut sembler très flou, c’est tout de même un support très intelligent réalisé par la Fondation Mozilla.

D’abord, il vaut la peine de préciser que le support de Cordova, ne va pas réellement convertir les applications web de Firefox OS en applications “natives” comme un certain nombre de personnes l’ont suggéré dans divers articles.
Les applications “natives” de Firefox OS sont des applications web et les apps Cordova ciblant Firefox OS sont juste une encapsulation des fonctionnalités HTML, CSS et JavaScript des applications.

Déploiement d'une application avec Cordova

Firefox OS tente de construire une API basée sur des normes qui, je l’espère, permettront aux applications web d’être développées uniquement avec les langages JavaScript, HTML et CSS, et ce avec le même accès au matériel qu’une application native peut le faire.

Le problème est que les normes sont lentes à évoluer et c’est quelque chose contre lesquelles Mozilla souhaite lutter pour faire avancer les choses. En outre, beaucoup d’entre elles ne sont pas poussées sur d’autres plateformes, ce qui suggère que le développement d’une application web pour Firefox OS ne pas forcément être facilement portée sur d’autres plateformes peut-être plus rentables.
Autrement dit, cela signifie que Firefox OS a un léger problème pour acquérir le nombre d’applications dont il a besoin pour être crédible sur le marché.

Et bien, comme vous pouvez l’imaginer, c’est là qu’intervient Apache Cordova. Sur les autres smartphones, Cordova va prendre votre application web et l’envelopper dans un contenant qui est une application native standard pour ce téléphone en particulier.
En outre Cordova offre une gamme d’API spécifiques qui permet au code JavaScript d’interagir avec le matériel du téléphone à un niveau qu’il serait impossible d’atteindre avec un navigateur standard.

La clé de l’importance de Cordova pour Firefox OS est que pour écrire une application Cordova vous faites usage à des API bien définies. Par exemple, si vous souhaitez accéder à la caméra, vous appelez la méthode GetPicture de l’objet de la caméra, et avec un callback vous allez pouvoir faire quelque chose de l’image retournée en bitmap – avigator.camera.getPicture (function (src) { ... });. Cet appel est le même pour tous les smartphones que Cordova supportent.

Débogueur Mozilla Cordova

Considérons maintenant faire le même travail dans Firefox OS. Soit vous devez bidouiller pour arriver à un tel résultat, soit vous attendez que l’API dédiée à la caméra soit complète – qui fait partie de WebRTC. Peu importe le choix que vous mettez en oeuvre, vous pouvez être quasi certains que cela ne fonctionnera pas sur un autre téléphone comme une application native et il n’est pas susceptible de fonctionner comme une application web jusqu’à ce que les navigateurs mobiles rattrapent les WebAPIs que Mozilla crée.

Qu’est-ce que tout cela signifie, c’est que vous pouvez utiliser les API Cordova pour écrire une application web qui fonctionne sur Firefox OS à l’aide d’une infime couche de traduction, et sur tous les autres smartphones qui sont pris en charge comme des applications natives. Cela semble être une bien meilleure perspective.
En effet, non seulement vous pouvez écrire de nouvelles applications pour Cordova ou Firefox OS, mais les applications existantes de Cordova devraient également fonctionner sur Firefox OS avec un ajout mineur. D’ailleurs, sachez que si vous avez une application existante Cordova, vous pouvez la montrer à Mozilla, et si celle-ci leur plaît, alors vous pourriez recevoir un smartphone sous Firefox OS afin de vous aider à faire fonctionner votre application sur le système d’exploitation mobile de la Fondation.

Équipe Mozilla au Mobile World Congress

Pour finir, si tout cela est très pratique pour les développeurs, cela met également en exergue que les API basées sur les normes HTML5 sur lesquelles Mozilla et d’autres travaillent ne sont, pour le moment, tout simplement pas à la hauteur et que les API de Cordova sont une norme de facto. Vous pouvez ne pas aimer cette conclusion mais pourtant cela reste bien quelque chose de réel.

Mots-clé : CordovaFirefox OSMozillaphonegap
Yohann Poiron

L’auteur Yohann Poiron

J’ai fondé le BlogNT en 2010. Autodidacte en matière de développement de sites en PHP, j’ai toujours poussé ma curiosité sur les sujets et les actualités du Web. Je suis actuellement engagé en tant qu’architecte interopérabilité.