EA2014FirefoxOS



= Présentation =


 * Enseignants : Georges-Pierre Bonneau, Didier Donsez (EA2014)
 * Sujet : FirefoxOS
 * Date : 4 octobre 2014
 * Auteur : Flavien Peyre 
 * Lien vers les slides de la présentation : slides

= Résumé = Firefox OS est un système d'exploitation libre et open-source pour téléphones et tablettes. Ses particularités sont l'utilisation de technologies web (HTML5, CSS, Javascript) pour coder les applications. Cela permet à ces applications de toucher également les utilisateurs utilisant Firefox comme navigateur sur leur ordinateur ou téléphone Android. Cette fiche de synthèse contient une présentation de Firefox OS, ainsi que sa place dans le marché du smartphone. Enfin nous aborderons la création d'application Firefox OS à partir d'une application web basique.

Mots Clés
Firefox, Smartphone, Libre, Open-source, HTML5, CSS, Javascript

= Abstract = Firefox OS is a free open-source operating system for smartphone and tablet.His main characteristics are the use of web technologies like HTML5, CSS or Javascript to create applications. This applications can be installed on computer with Firefox's browser or on Android's devices.This form contains a presentation of Firefox OS and a market research. We talk about the crEation of an Firefox OS application from a web application too..

Key Words
Firefox OS, Free software, smartphone, open-sources, HTML5, CSS, Javascript

= Synthèse =

Présentation
Firefox OS est un système d'exploitation pour smartphones et tablettes lancé en février 2013. Sa particularité est d’être libre et open-source. 3 éléments principaux constituent cet OS : Gonk (le noyau Linux), Gaia (l'interface utilisateur de Firefox OS codée en HTML5, CSS et Javascript) et Gecko (le moteur de rendu).

Motivations
Les objectifs de la fondation Mozilla pour Firefox OS sont d'initier au smartphone des personnes non initiées à ce milieu. La fondation veut également créer des applications multi-plateforme (Firefox OS, Android ou encore pour ordinateur) via l'utilisation des technologies web. Cela permet de n'avoir à coder qu'une seule fois l'application et de ne pas avoir à créer une version pour chaque support. Enfin ils souhaitent permettre aux développeurs web de pouvoir créer leurs propre application, la ou Android ou Ios utilisent des langages de programmation comme Java ou objective C.

Marché
Tous les chiffres de cette parties sont issus de l'IDC.

A l'heure actuelle, Android et Ios représentent 96% du marché du smartphone. Les pays émergents représente 75% des ventes de smartphone en 2014. Enfin il faut également savoir que le prix moyen pour un terminal Android est de 316$ et de 600$ pour un Iphone ou Ipad.

Partant de ce constat, la stratégie de Firefox OS est de viser le marché des pays émergents. Cela passe donc par la proposition de Smartphone embarquant Firefox OS pour un prix le plus bas possible. Ceci est rendu possible via des partenariats avec des fabricants comme ZTE, Huawei, ou Alcatel (on peut trouver un smartphone Firefox OS en Inde pour 25 dollars). Mozilla applique également cette stratégie dans d'autres pays plus développés comme la France en proposant un smartphone pour 80 euros.

=Fonctionnement et Création d'une application=

Schéma d'une application Firefox OS


Considérons que nous partons d'une application web existante. La transformer en application Firefox OS est assez simple. Il faut tout d'abord ajouter un fichier manifest contenant le nom de l'application, sa page web de démarrage, des informations sur l'auteur ainsi que les permissions demandées (par exemple pour utiliser la géolocalisation). Il faut ensuite modifier notre application en utilisant les webapi créées dans le cadre du projet Firefox OS. Ce sont ces api qui permettent à l'application d’interagir avec le hardware. Enfin il faut ajouter divers éléments comme les icônes utilisées pour l'application ou ajouter un bouton ou un script appelant la fonction installant l'application.



Comment partager son application Firefox OS
Il existe deux grande familles d'applications dans Firefox OS : les hosted et les packaged.

Les hosted sont des applications Firefox OS de base, non compressé. Elles sont disponible sur un serveur, comme un site web basique. Leur particularité est que pour fonctionner elles nécessitent un accès en ligne.

Les packaged sont des applications Firefox OS zippées auxquelles on ajoute un autre manifest nommé mini_manifest. Ces applications une fois installées peuvent fonctionner en mode hors ligne.

Les applications peuvent soit être déployer sur une machine appartenant au développeur de l'application (sur un serveur Apache par exemple) ou bien être mise en ligne sur le marketplace de Firefox OS

Le market Firefox OS
La deuxième solution pour publier son application est de passer via le market officiel : Firefox Marketplace

Ce Marketplace contient environ 4000 applications dont la moitié sont de type hosted. De plus à peu prés 1000 applications sont compatible soit avec Android soit avec Firefox.

Pour pouvoir uploader son application sur le market, il faut passer deux étapes:


 * Le submission check-list : ici le développeur remplit un formulaire avec le nom de l'application, sa description, si elle est hosted ou packaged, payante ou gratuite ,... Il passe également un test pour obtenir une certification (limite d'age conseillée pour pouvoir utiliser l'application)


 * Le reviewer test: Ici des membres du projet Firefox OS vont tester l'application au niveau sécurité (pas de suppression de données utilisateur), utilisabilité (On affiche pas une page designé pour un écran d'ordinateur sur un smartphone), ou encore un contrôle de copyright et de non infraction aux conditions d'utilisation. Si l'application est rejetée, un retour est fait au développeur pour savoir sur quels points il doit travailler.

=Comparaison avec les principaux concurrents= Dans cette partie nous allons comparer Firefox OS avec différents acteurs du monde du smartphone sur différents points (nombre de terminaux, d'applications,...)


 * Au niveau du nombre de terminaux, il existe à l'heure actuelle 11 smartphone différent accueillant nativement Firefox OS. Un nombre si faible comparé à Android ou à Windows Phone possède toutefois un avantage : les tests pour une applications sont plus simple à mettre en place, et on peut imaginer avoir moins de problèmes de compatibilité entre les différents téléphones. Le désavantage est par contre un choix drastiquement limité pour le client, sachant de plus que tout les smartphones ne sont pas disponibles dans tout les pays.


 * Via le multi-plateforme, les applications Firefox OS peuvent toucher un public plus nombreux que les applications Android ou Ios. En effet comme les applications Firefox OS peuvent s'installer pour certaines sur un terminal Android ou sur un ordinateur pourvu du navigateur Firefox, le nombre de client potentiel est très élevé.


 * Le nombre d'applications sur le market est très faible : ~4000. Certes les applications peuvent être hébergée sur un serveur par leurs développeurs, mais pour la plupart des personnes, la référence pour obtenir une application reste le market officiel.


 * L'utilisation des technologies Web permet de s'adresser à un nombre de développeurs plus élevés que l'utilisation de langages de programmation objets comme java ou Objective C.

= Conclusion = En conclusion, Firefox OS est un système d'exploitation libre et open source pour smartphone permettant de créer des applications multi-plateforme via l'utilisation de technologies web. Il se veut également comme une introduction au smartphone pour des gens ne connaissant pas encore ce domaine. On peut néanmoins se demander comment cet OS va se comporter face à la concurrence de Google OS (basé également sur les technologies web) et d' Android sur le marché des pays émergents. Enfin comme nous l'avons vu plus tôt, 50% des applications Firefox OS nécessite une connexion internet pour pouvoir fonctionner. La qualité du réseau et le prix des forfait avec une connexion internet mobile dans les pays émergents est donc un élément crucial pour le futur de Firefox Os.

= Notes et références =

Recherche Documentaire
Firefox OS :


 * marketplace


 * explication packaged ou hosted

Lien pour les chiffres :


 * zdnet

Démos
Lien vers l'application Firefox OS boilerplate :accés