A lista a seguir contém uma referência a nível de código que pode ser útil durante o desenvolvimento de aplicações para Firefox OS. Para maiores informações, ferramentas e vídeos acesse dochub.io.

Fundamentos de uma aplicação para Firefox OS

Uma aplicação para Firefox OS nada mais é do que um simples Open Web App.

Manifesto
É o arquivo com informações sobre a aplicação. Nessa seção você verá como funciona o manifesto e como criá-lo.
Instalação e gerenciamento de APIs
Interface usada para instalar aplicações e gerenciá-las.
Aplicação rodando offline
Estratégias e tecnologias que podem ser utilizadas para assegurar que a aplicação funcionará quando não houver conexão com a internet disponível.
Tipos de Aplicações
Esse artigo explica os tipos de aplicações: hospedadas, privilegiadas e certificadas. Para acessar APIs específicas do sistema será necessário que a aplicação seja privilegiada ou certificada. As aplicações privilegiadas e certificadas devem ser empacotadas.
Permissões da Aplicação
O acesso às APIs do dispositivo podem ajudar a criar aplicações mais úteis. Aqui voc~e irá encontrar as APis disponíveis e como acessá-las.

Layout e estrutura

Design Responsivo
Sua aplicação deve ser capaz de se ajustar a diferentes tamanhos de telas e dispositivos. Esse guia o ajudará com esse trabalho.
Media queries
Uma das tecnologias mais importantes na hora de criar uma aplicação responsiva são as media queries. Elas permitirão à sua aplicação se ajustar a diferentes tamanhosde telas, resolução, orientação do dispositivo e outras variações, usando CSS e JavaScript. Veja mais em Usando media queries e MediaQueryList.
Box Flexíveis
Os box flexíveis permitirão configurar automaticamentea interface da aplicação para que seja ajustada e posicionada conforme o tamanho e orientação da tela.

Desenho e animações

CSS transforms
Permitem rotacionar, escalar e dar zoom sobre o conteúdo HTML, fazendo uso da aceleração de hardware quando estiver disponível e fazer uso do JavaScript.
CSS transitions
Permitem criar efeitos de transição diretamente no CSS, que ocorrerão a partir de um período de tempo determinado, ao invés de ocorrerem de forma instantânea.
CSS animations
As animações permitirão criar efeitos animados para troca de conteúdo, posicionamento de elementos na página e ciclos de animação que ocorrem uma ou múltiplas vezes, sem a necessidade de utilizar JavaScript.
HTML canvas
O elemento HTML <canvas> provê um espaço para trabalhar com desenhos em 2D, muito útil na produção de jogos.
WebGL
É uma versão da OpenGL ES para web, que permite à aplicação oferecer gráficos 3D acelerados por hardware.
SVG
Scalable Vector Graphics (SVG) é uma tecnologia que permite desenhar objetos vetoriais ao invés de utilizar imagens. São muito úteis, graças à sua escalabilidade, para mostrar diagramas e gráficos e também para interfaces de usuário escaláveis.

APIs do dispositivo

As APIs do Firefox OS são padrões web que estão surgindo e APIs próprias do dispositivo muito importantes para o desenvolvimento de aplicações e Open Web Apps.

A tabela a seguir mostra as permissões para as aplicações, hospedadas, privilegiadas e certificadas. Maiores informações sobre permissões podem ser vistas aqui.

Web APIs

Elementos, eventos, requisições de rede, armazenamento e outras Web APIs padrões.

Requisições de rede - enviar e receber dados com  XMLHttpRequest
XMLHttpRequest é uma API do DOM usada para enviar e receber informações usando HTTP, incluindo o download de arquivos.
Eventos do DOM
A documentação sobre eventos proporciona uma lista completa dos eventos que podem ser enviados e recebidos para interagir com os elementos do DOM.
Eventos de toque
Essa documentação apresenta os eventos de toque que podem ser utilizados na hora de desenvolver aplicações para dispositivos com telas sensíveis ao toque.
Eventos online e offline
Permite à aplicação responder dinamicamente a mudanças de estado da rede (online e offline).
Histórico
Manipula e navega através do histórico da aplicação com o uso de vários comandos. útil para fazer o processo de avançar e voltar ente as telas da aplicação.
Áudio
Integra e manipula conteúdo de áudio com a tag de áudio do HTML5.
Vídeo
Integra e manipula conteúdo de vídeo com a tag de vídeo do HTML5.
Geolocalização
Permite à aplicação obter, sob permissão, a localização atual do usuário e acompanhar as mudanças da mesma.
Orientação da tela
Acompanha as mudanças de orientação da tela, entre retrato e paisagem.
Orientação do aparelho
Permite à aplicação detectar as mudanças de orientação do aparelho, a partir dos sensores do mesmo.
IndexedDB
Banco de dados para aplicações web que necessitam de uma interface para armazenamento e recuperação de grandes quantidades de dados no dispositivo do usuário.
Armazenamento (Storage)
A API de armazenamento provê várias formas de armazenar uma quantidade limitada de dados simples, de forma persistente, no dispositivo do usuário:
Web workers
permite á aplicação executar código JavaScript (que não pode interagir com o DOM ou com o objeto Window) como uma tarefa de background, o que permite otimizar o rendimento e desbloquear a renderização da interface do usuário.

Serviços da Firefox Marketplace

Esses documentos e guias te ajudarão a aprender como publicar sua aplicação e gerenciá-la na Firefox OS Marketplace

API de Envio
Essa API permite validar a aplicação e receber informações sobre as aplicações disponíveis para instalação.
API da Marketplace
Toda a documentação relacionada à Marketplace.

Etiquetas do documento e colaboradores

Colaboradores desta página: jlamim
Última atualização por: jlamim,