Firefox OS – A Web é a Plataforma!



Firefox OS – A Web é a Plataforma!

4 0


talk-firefoxos

Palestra sobre o Firefox OS

On Github SamuelMoraesF / talk-firefoxos

Firefox OS

A Web é a Plataforma!

Comunidade Mozilla Brasil - mozillabrasil.org.br

A Mozilla é...

uma comunidade global de pessoas que acreditam que abertura, inovação, e oportunidade são fatores fundamentais para o bem estar da Internet. - Somos programadores, advogados, cientistas, designers, estudantes... - Somos pessoas comuns que lutam para garantir a sua liberdade e direito de expressão.

Firefox OS

Smartphones Comercializados no Brasil

LG Fireweb

Alcatel One Touch Fire

Gaia

Coleção de aplicativos web que fazem a UI

Gecko

Motor de JS e Renderização de HTML, APIs amigáveis para acesso ao hardware

Gonk

Kernel Linux, Device drivers e camada de abstração do hardware

- Kernel baseado no AOSP (Android Open Source Project)

Ferramentas de

desenvolvimento

Firefox OS

Simulator

manifest.webapp

{
	"name": "Meu App",
	"description": "Minha descrição",
	"launch_path": "/",
	"icons": { "128": "/img/icon-128.png" },
	"developer": {
	        "name": "Meu nome ou organização",
	        "url": "http://sua-pagina-aqui.org"
	}
}

Apps hospedados

Armazenada no seu servidor, fácil de atualizar, acesso ao hardware limitado.

Apps privilegiados

Verificada pelo Marketplace, utiliza uma Politica de Segurança de Conteúdo, armazenada em um servidor.

Apps certificados

Parte do sistema operacional, apenas para a Mozilla e parceiros.

- Kernel baseado no AOSP (Android Open Source Project)

Demo

Fazendo uma ligação

var call = new MozActivity({
	name: "dial",
	data: {
	        number: "909034111000"
	}
});

Demo

Pegando uma imagem

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

Demo

Pegando uma imagem - callback

getphoto.onsuccess = function () {
	var img = document.createElement("img");
	if (this.result.blob.type.indexOf("image") != -1) {
	        img.src = window.URL.createObjectURL(this.result.blob);
	}
};
getphoto.onerror = function () {
	// Me caiu os butiá do bolso!
};

Armazenamento

AppCache

<html manifest="meuapp.appcache">
  ...
</html>
CACHE MANIFEST
# v1 - 2014-04-10
# isso é um comentário(avá)
www.example.com/index.html
www.example.com/*.png
*.jpg
*/logo.png

Armazenamento

DOM Storage

sessionStorage.setItem("chave", "valor");
					
alert(sessionStorage.getItem("chave"));
				
// localStorage = Para Sempre
// sessionStorage = Sessão Atual

Armazenamento

IndexedDB

- Não tem limite de storage - Voltado para trabalhar com grande quantidade de dados - Busca de alta perfomance

Firefox

Marketplace

E agora?

Comunidade