!
FLÁVIO	
  ALMEIDA	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  flavio.almeida@caelum.com.br	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  @	
  	
  	
  flaviohalmeida	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  flaviohenriquealmeida/firefox-­‐os-­‐angularjs
FirefoxOS	
  
!
Seu	
  talento	
  front-­‐end	
  
direto	
  no	
  celular
FirefoxOS
Em	
  breve	
  também	
  no	
  
tablet
h"p://goo.gl/KsJCSz
Firefox	
  OS
•NÃO	
  é	
  uma	
  RAPOSA	
  
•hNps://github.com/mozilla-­‐b2g/B2G	
  
	
  	
  	
  	
  	
  	
  	
  B2G:	
  boot	
  to	
  gecko	
  
•UTILIZA	
  o	
  KERNEL	
  do	
  	
  AOSP	
  

	
  	
  	
  	
  	
  	
  (Android	
  Open	
  Source	
  Project)
•BILLING	
  diferenciado	
  
•APP`S	
  com	
  CRÉDITO	
  do	
  celular	
  
•OPERADORAS	
  lucram	
  
•PREÇO	
  acessível*
Flame	
  
Mozilla/T2Mobile	
  
!
Referência	
  para	
  	
  	
  	
  	
  	
  
desenvolvedores	
  
!
4.5”	
  dual-­‐core	
  
1	
  GB	
  M/8	
  GB
Camadas	
  	
  
do	
  SO	
  
Gonk: sistema de baixo nível do B2G. Compatível
com ADB (Android Debug Bridge)
Gecko: ambiente de execução da aplicação
(HTML, CSS e JavaScript)
Gaia: interface do Usuário
Versão	
  1.3	
  (14/05)	
  	
  
hNp://www.mozilla.org/en-­‐US/firefox/os/notes/1.3/
WebGL	
  
asm.js	
  
WebAudio	
  
WebNFC	
  	
  
Desenvolvedor
Front-­‐end
Firefox	
  OS
HTML5
Javascript
CSS3
NATIVOS
ESPERE UM POUCO…
KIMOSABE!
phonegap.com
www.appcelerator	
  (Titanium)
cordova.apache.org
Frameworks	
  
Plataformas
Windows	
  	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Phone	
  8	
  
Firefox	
  OS
REAPROVEITA*	
  SEU	
  
WORKFLOW	
  	
  
!
!
!
FRONT-­‐END	
  
*	
  com	
  pouquíssimas	
  mudanças
Entendeu agora
KIMOSABE?
ESTRUTURA	
  
DA	
  	
  
APLICAÇÃO	
  
{	
  
	
  	
  "version":	
  "1.0",	
  
	
  	
  "name":	
  "Exemplo",	
  
	
  	
  "launch_path":	
  "/index.html",	
  
	
  	
  "icons":	
  {	
  
	
  	
  	
  	
  "128":	
  "/img/icon-­‐128.png"	
  
	
  	
  }	
  
}
manifest.webapp	
  
Ícone
da app
Nome
abaixo do ícone
Chamar
quem?
JSON	
  
Tipos	
  de	
  aplicauvo	
  
Armazenado	
  mum	
  servidor	
  web.	
  
Quando	
  uulizado	
  é	
  feito	
  	
  
um	
  acesso	
  ao	
  servidor	
  	
  
remoto	
  caso	
  o	
  	
  
aplicauvo	
  não	
  esteja	
  no	
  cache.
Hospedado
Distribuídos	
  através	
  de	
  um	
  zip	
  que	
  
é	
  copiado	
  na	
  	
  
instalação	
  do	
  	
  
aplicauvo.
Empacotado
Permissionamento
Normal
{	
  
	
  	
  "version":	
  "1.0",	
  
	
  	
  "name":	
  "Exemplo",	
  
	
  	
  "launch_path":	
  "/index.html",	
  
	
  	
  "icons":	
  {	
  
	
  	
  	
  	
  "128":	
  "/img/icon-­‐128.png"	
  
	
  	
  }	
  
}
Privilegiada
…	
  
"type":	
  "privileged",	
  
"permissions":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  "contacts":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "descripuon":	
  "msg",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "access":	
  "readcreate"	
  
	
  	
  	
  	
  	
  	
  	
  }	
  
}	
  
…
Ceruficada
{	
  
	
  	
  "version":	
  "1.0",	
  
	
  	
  "name":	
  “Exemplo",	
  
	
  	
  "type":"cerufied",	
  
	
  	
  "launch_path":	
  "/index.html",	
  
	
  	
  "icons":	
  {	
  
	
  	
  	
  	
  "128":	
  "/img/icon-­‐128.png"	
  
	
  	
  }	
  
}
Como	
  
começar?
Simulador
•Instalação	
   como	
   plugin	
   do	
  
Firefox	
  
!
!
•Inicia	
  em	
  aprox.	
  5	
  segundos	
  
!
!
•Rápido,	
  mesmo	
  em	
  

máquinas	
  modestas
hNps://|p.mozilla.org/pub/mozilla.org/labs/fxos-­‐simulator
Tudo	
  uma	
  
maravilha	
  né?	
  
Porém…
Firefox	
  OS
Aplicauvo	
  é	
  themeless
Firefox	
  OS
Não	
  é	
  responsivo	
  
por	
  padrão
Firefox	
  OS
Manipulação	
  de	
  
DOM
Firefox	
  OS
getbootstrap.com
angular.org
Bootstrap	
  mobile	
  first,	
  	
  Media	
  Query,	
  	
  	
  
Fluid	
  Grid,	
  Responsive	
  Images	
  …	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  Todas	
  boas	
  práucas	
  que	
  o	
  
desenvolvedor	
  front-­‐end	
  deveria	
  saber
Firefox	
  OS
SHOW ME THE
SOURCE 	

YOU MUST

firefox-os-front-end