SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Plan
•Introduction
•Architecture
•Guidelines
•Création d'un écran
•Manifest
•Hosted/Packaged apps
•Permissions
•WebAPIs/WebActivities
•Simulateur
•Gaia Building Blocks
•Hands-on
Firefox OS ???
http://www.mozilla.org/en-US/mission/

Nom de code : Boot To Gecko (B2G)
!

Firefox OS = Implémentation de la
mission de la fondation Mozilla

(construire un meilleur Internet et un web plus
ouvert et accessible à tous) sur la mobilité.
Firefox OS ???
Terminaux disponibles à la vente depuis Juillet 2013
Espagne, Pologne, Uruguay, Venezuela, Colombie, Mexique, Brésil…

ZTE Open - Alcatel One Touch - Geeksphone Keon / Peaks
Architecture

Gonk : Noyau Linux + custom-built HAL (Hardware Abstraction Layer)
Gecko : Moteur de rendu HTML, CSS, JS basé sur celui du navigateur Firefox +
Gestion des Web API
Gaia : Interface utilisateur - Ensemble d’applications HTML5
Architecture

-

+

=

Gonk : Noyau Linux basé sur la version fournie par Android Open Source Project
Communication avec le device via ADB (Android Debug Bridge)
Fichiers apk (/system/app/) et police Roboto dans le filesystème
Build.prop
ClockWorkMod etc.
UI Guidelines
http://www.mozilla.org/en-US/styleguide/products/firefox-os/

!
Création d’un écran
http://en.wikipedia.org/wiki/Single-page_application

<body role="application">
<section role="region" id="first-screen">
<header>
<h1>My application</h1>
</header>
!

<article>
My content
</article>
</section>
!

<!-- Other sections -->
</body>
Manifest
https://developer.mozilla.org/en-US/Apps/Developing/Manifest
manifest.webapp
{
"version": "1",
"name": "Firefox OS Boilerplate App",
"launch_path": "/index.html",
"description": "Boilerplate Firefox OS app with example use cases to get started",
"icons": {
"60": "/images/logo60.png",
"128": "/images/logo128.png"
},
"developer": {
"name": "Robert Nyman",
"url": "http://robertnyman.com"
},
"default_locale": "en",
"permissions": {
"desktop-notification": {
"description": "To show notifications"
},
"geolocation": {
"description": "Marking out user location"
}
}
}
Manifest
Portage rapide
Hosted vs Packaged Apps
Hosted apps
!
!

•Hébergées sur votre propre
serveur (comme n’importe quel
site)
•Peuvent être installées sur le
device (avec un peu de JS +
Manifest)
•Facile à maintenir
•Difficile de gérer le offline
(appcache)
•Limitées dans les APIs du système
qu’elles peuvent utiliser

Packaged apps
!
!

•Distribuées dans un fichier .zip
et installées dans l'appareil
•Accès aux APIs du système
•Mises à jour moins souples que
pour les hosted apps
(publication, validation Firefox
Marketplace)
Différentes permissions
https://developer.mozilla.org/en-US/docs/WebAPI

• Plain (web, default) : Toutes les apps qui ne déclarent aucune
permission particulière dans leur Manifest entrent dans cette catégorie.
Elles ont accès à la plupart des APIs qui sont fournies dans les navigateurs,
mais n’ont pas accès aux WebAPIs de Mozilla
!

• Privileged : Accès à la plupart des APIs + certaines plus sensibles comme
l’API des contacts du téléphone ou les alarmes système. Ces applications
doivent être approuvées par Mozilla et signées par le MarketPlace pour
pouvoir être installées sur les devices des utilisateurs - Processus de
review plus long.
!

• Certified : Seulement pour Mozilla et ses partenaires (constructeurs,
telecom…) : Les applications certifiées ont accès à toutes les APIs, même
les plus critiques (passer des appels etc.). Seules les apps inclues par
défaut dans le système sont certifiées.
Différentes permissions
Web APIs
https://developer.mozilla.org/en-US/docs/WebAPI

Permettent d’accéder au hardware

// If this device supports the vibrate API...
if ('vibrate' in navigator) {
// ... vibrate for a second
navigator.vibrate(1000);
}

// Saving a contact
var contact = new mozContact();
contact.init({name: 'Odin'});
var request = navigator.mozContacts.save(contact);
request.onsuccess = function() { /*...*/ };
request.onerror = function() { /*...*/ };

// Making calls
var call = new MozActivity({
name: "dial",
data: {
number: "5555-9999"
}
});
WebActivities
https://hacks.mozilla.org/2013/01/introducing-web-activities/
Similaire aux Intents (appels de fonctionnalités d’autres apps)

// Open an image picker
var pick = new MozActivity({
name: "pick",
data: {
type: ["image/png", "image/jpg", "image/jpeg"]
}
});

// Open a URL
var openURL = new MozActivity({
name: "view",
data: {
type: "url", // Possibly text/html in future versions
url: "http://www.xebia.fr"
}
});
Simulateur
https://addons.mozilla.org/fr/firefox/addon/firefox-os-simulator/
Tips
Control + Shift + M
Command + Option + M
Gaia Building Blocks
http://buildingfirefoxos.com/

CSS animations
Buttons
Drawer (slide panel)
ActionBar (headers)
Input
Lists
Progress
Value selectors
etc…
Hands-on

Mais conteúdo relacionado

Mais procurados

What's Next Replay - Flex Mobile
What's Next Replay - Flex MobileWhat's Next Replay - Flex Mobile
What's Next Replay - Flex MobileZenikaOuest
 
Développer des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapDévelopper des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapMakina Corpus
 
Tuto Phonegap
Tuto PhonegapTuto Phonegap
Tuto PhonegapSUN
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidemaru.maru
 
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...Microsoft
 
La Technologie WRT Pour Widgets Mobiles Nokia
La Technologie WRT Pour Widgets Mobiles NokiaLa Technologie WRT Pour Widgets Mobiles Nokia
La Technologie WRT Pour Widgets Mobiles NokiaThomas
 

Mais procurados (8)

Silverlight
SilverlightSilverlight
Silverlight
 
What's Next Replay - Flex Mobile
What's Next Replay - Flex MobileWhat's Next Replay - Flex Mobile
What's Next Replay - Flex Mobile
 
Développer des applications mobiles avec phonegap
Développer des applications mobiles avec phonegapDévelopper des applications mobiles avec phonegap
Développer des applications mobiles avec phonegap
 
Tuto Phonegap
Tuto PhonegapTuto Phonegap
Tuto Phonegap
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-side
 
Silverlight 4
Silverlight 4Silverlight 4
Silverlight 4
 
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...
Windows Phone: Migrez de Silverlight vers Universal App, Préparez vous à Wind...
 
La Technologie WRT Pour Widgets Mobiles Nokia
La Technologie WRT Pour Widgets Mobiles NokiaLa Technologie WRT Pour Widgets Mobiles Nokia
La Technologie WRT Pour Widgets Mobiles Nokia
 

Destaque

Sécurité android par Philippe Prados 25/07/2012
Sécurité android par Philippe Prados 25/07/2012Sécurité android par Philippe Prados 25/07/2012
Sécurité android par Philippe Prados 25/07/2012Paris Android User Group
 
In01 - Programmation Android - 02 - android
In01 - Programmation Android - 02 - androidIn01 - Programmation Android - 02 - android
In01 - Programmation Android - 02 - androidYann Caron
 
My presentation on Android in my college
My presentation on Android in my collegeMy presentation on Android in my college
My presentation on Android in my collegeSneha Lata
 
Initiation Android Niveau Débutant
Initiation Android Niveau DébutantInitiation Android Niveau Débutant
Initiation Android Niveau DébutantNadim GOUIA
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating systemSalma Begum
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm
 
Développement Android
Développement AndroidDéveloppement Android
Développement AndroidFranck SIMON
 

Destaque (9)

Sécurité android par Philippe Prados 25/07/2012
Sécurité android par Philippe Prados 25/07/2012Sécurité android par Philippe Prados 25/07/2012
Sécurité android par Philippe Prados 25/07/2012
 
In01 - Programmation Android - 02 - android
In01 - Programmation Android - 02 - androidIn01 - Programmation Android - 02 - android
In01 - Programmation Android - 02 - android
 
My presentation on Android in my college
My presentation on Android in my collegeMy presentation on Android in my college
My presentation on Android in my college
 
Android seminar ppt
Android seminar pptAndroid seminar ppt
Android seminar ppt
 
Initiation Android Niveau Débutant
Initiation Android Niveau DébutantInitiation Android Niveau Débutant
Initiation Android Niveau Débutant
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating system
 
Alphorm.com Formation Android 5
Alphorm.com Formation Android 5Alphorm.com Formation Android 5
Alphorm.com Formation Android 5
 
Développement Android
Développement AndroidDéveloppement Android
Développement Android
 
Android ppt
Android ppt Android ppt
Android ppt
 

Semelhante a Fxos

Présentation Firefox OS
Présentation Firefox OSPrésentation Firefox OS
Présentation Firefox OSlcuguen
 
Windows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer TalksWindows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer TalksJean-Sébastien Dupuy
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologiewyggio
 
Extentions Firefox 29-01-2013
Extentions Firefox 29-01-2013Extentions Firefox 29-01-2013
Extentions Firefox 29-01-2013URFIST de Paris
 
Firefox os appdays paris par tristan nitot: Hack, Learn, Celebrate
Firefox os appdays paris par tristan nitot: Hack, Learn, CelebrateFirefox os appdays paris par tristan nitot: Hack, Learn, Celebrate
Firefox os appdays paris par tristan nitot: Hack, Learn, CelebrateTristan Nitot
 
Ch1. Développement mobile
Ch1. Développement mobileCh1. Développement mobile
Ch1. Développement mobileHaifa Chorfi
 
Introduction to WebRTC on iOS
Introduction to WebRTC on iOSIntroduction to WebRTC on iOS
Introduction to WebRTC on iOSCocoaHeads France
 
Strategies et developpements mobiles multi-plates-formes.
Strategies et developpements mobiles multi-plates-formes.Strategies et developpements mobiles multi-plates-formes.
Strategies et developpements mobiles multi-plates-formes.DocDoku
 
Introduction à web assembly
Introduction à web assemblyIntroduction à web assembly
Introduction à web assemblyJérémy Buget
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobilesAbdoulaye Dieng
 
FusionDirectory : Industrialisation du déploiement
FusionDirectory : Industrialisation du déploiement FusionDirectory : Industrialisation du déploiement
FusionDirectory : Industrialisation du déploiement Anne Nicolas
 
Développez des applications natives en HTML/JS avec Chrome apps
Développez des applications natives en HTML/JS avec Chrome appsDéveloppez des applications natives en HTML/JS avec Chrome apps
Développez des applications natives en HTML/JS avec Chrome appsFlorent Dupont
 
Les Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileLes Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileMohamed BOURAOUI
 
defuzeme_documentation_technique.pdf
defuzeme_documentation_technique.pdfdefuzeme_documentation_technique.pdf
defuzeme_documentation_technique.pdfSami Asmar
 
Test flight et les outils de distribution continue par simone civetta de xebia
Test flight et les outils de distribution continue par simone civetta de xebiaTest flight et les outils de distribution continue par simone civetta de xebia
Test flight et les outils de distribution continue par simone civetta de xebiaCocoaHeads France
 
Le développement mobile multiplateforme avec cordova
Le développement mobile multiplateforme avec cordovaLe développement mobile multiplateforme avec cordova
Le développement mobile multiplateforme avec cordovaSébastien Ollivier
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 

Semelhante a Fxos (20)

Présentation Firefox OS
Présentation Firefox OSPrésentation Firefox OS
Présentation Firefox OS
 
Windows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer TalksWindows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer Talks
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
 
Extentions Firefox 29-01-2013
Extentions Firefox 29-01-2013Extentions Firefox 29-01-2013
Extentions Firefox 29-01-2013
 
Firefox os appdays paris par tristan nitot: Hack, Learn, Celebrate
Firefox os appdays paris par tristan nitot: Hack, Learn, CelebrateFirefox os appdays paris par tristan nitot: Hack, Learn, Celebrate
Firefox os appdays paris par tristan nitot: Hack, Learn, Celebrate
 
Ch1. Développement mobile
Ch1. Développement mobileCh1. Développement mobile
Ch1. Développement mobile
 
Introduction to WebRTC on iOS
Introduction to WebRTC on iOSIntroduction to WebRTC on iOS
Introduction to WebRTC on iOS
 
Strategies et developpements mobiles multi-plates-formes.
Strategies et developpements mobiles multi-plates-formes.Strategies et developpements mobiles multi-plates-formes.
Strategies et developpements mobiles multi-plates-formes.
 
Introduction à web assembly
Introduction à web assemblyIntroduction à web assembly
Introduction à web assembly
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobiles
 
FusionDirectory : Industrialisation du déploiement
FusionDirectory : Industrialisation du déploiement FusionDirectory : Industrialisation du déploiement
FusionDirectory : Industrialisation du déploiement
 
Développez des applications natives en HTML/JS avec Chrome apps
Développez des applications natives en HTML/JS avec Chrome appsDéveloppez des applications natives en HTML/JS avec Chrome apps
Développez des applications natives en HTML/JS avec Chrome apps
 
Meetup sencha
Meetup senchaMeetup sencha
Meetup sencha
 
Développement web mobile avec IONIC 2
Développement web mobile avec IONIC 2Développement web mobile avec IONIC 2
Développement web mobile avec IONIC 2
 
Les Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobileLes Systèmes d'exploitation mobile
Les Systèmes d'exploitation mobile
 
defuzeme_documentation_technique.pdf
defuzeme_documentation_technique.pdfdefuzeme_documentation_technique.pdf
defuzeme_documentation_technique.pdf
 
Architecture android
Architecture androidArchitecture android
Architecture android
 
Test flight et les outils de distribution continue par simone civetta de xebia
Test flight et les outils de distribution continue par simone civetta de xebiaTest flight et les outils de distribution continue par simone civetta de xebia
Test flight et les outils de distribution continue par simone civetta de xebia
 
Le développement mobile multiplateforme avec cordova
Le développement mobile multiplateforme avec cordovaLe développement mobile multiplateforme avec cordova
Le développement mobile multiplateforme avec cordova
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 

Mais de Nilhcem

Home Automation with Android Things and the Google Assistant
Home Automation with Android Things and the Google AssistantHome Automation with Android Things and the Google Assistant
Home Automation with Android Things and the Google AssistantNilhcem
 
Using Android Things to Detect & Exterminate Reptilians
Using Android Things to Detect & Exterminate ReptiliansUsing Android Things to Detect & Exterminate Reptilians
Using Android Things to Detect & Exterminate ReptiliansNilhcem
 
The 2016 Android Developer Toolbox [NANTES]
The 2016 Android Developer Toolbox [NANTES]The 2016 Android Developer Toolbox [NANTES]
The 2016 Android Developer Toolbox [NANTES]Nilhcem
 
The 2016 Android Developer Toolbox [MOBILIZATION]
The 2016 Android Developer Toolbox [MOBILIZATION]The 2016 Android Developer Toolbox [MOBILIZATION]
The 2016 Android Developer Toolbox [MOBILIZATION]Nilhcem
 
LaoZi - Software Craftsman
LaoZi - Software CraftsmanLaoZi - Software Craftsman
LaoZi - Software CraftsmanNilhcem
 
Android Wear Essentials
Android Wear EssentialsAndroid Wear Essentials
Android Wear EssentialsNilhcem
 

Mais de Nilhcem (6)

Home Automation with Android Things and the Google Assistant
Home Automation with Android Things and the Google AssistantHome Automation with Android Things and the Google Assistant
Home Automation with Android Things and the Google Assistant
 
Using Android Things to Detect & Exterminate Reptilians
Using Android Things to Detect & Exterminate ReptiliansUsing Android Things to Detect & Exterminate Reptilians
Using Android Things to Detect & Exterminate Reptilians
 
The 2016 Android Developer Toolbox [NANTES]
The 2016 Android Developer Toolbox [NANTES]The 2016 Android Developer Toolbox [NANTES]
The 2016 Android Developer Toolbox [NANTES]
 
The 2016 Android Developer Toolbox [MOBILIZATION]
The 2016 Android Developer Toolbox [MOBILIZATION]The 2016 Android Developer Toolbox [MOBILIZATION]
The 2016 Android Developer Toolbox [MOBILIZATION]
 
LaoZi - Software Craftsman
LaoZi - Software CraftsmanLaoZi - Software Craftsman
LaoZi - Software Craftsman
 
Android Wear Essentials
Android Wear EssentialsAndroid Wear Essentials
Android Wear Essentials
 

Fxos