Diferentes formas de executar o Gaia

Você pode executar o Gaia em um simulador via App Manager, diretamente do Firefox Desktop, como um binário dedicado (B2G Desktop), em um emulador, ou em um dispositivo móvel compatível. Esse artigo fornece um resumo de como fazer com cada uma das opções, com links para maiores informações.

O quão próximo cada opção está de uma coisa real?

Algumas das soluções para executar o Gaia nesse artigo está mais próxima da experiência em um dispositivo real do que em outras. A ordem do quão fácil é executar cada uma é a seguinte:

  1. Gaia no simulador
  2. Gaia no Desktop Firefox
  3. Gaia no B2G Desktop
  4. Gaia no Emulador
  5. Flashing do Gaia no telefone
  6. Flashing do Gaia+Gecko no telefone

A ordem de "O quão próximo cada opção está de um produto comercializado" é exatamente a oposta da mostrada acima. Dependendo do recurso no qual você está trabalhando, você terá que encontrar o ambiente adequado à resolução do problema.

Usando o Gaia no Simulador App Manager/Firefox OS

A forma mais rápida de experimentar o Gaia é via o Firefox App Manager.

App Manager é uma ferramenta de desenvolvimento disponível no Firefox Desktop. Fornece diversas ferramentas úteis que o ajudarão a testar, instalar e depurar Aplicativos web HTML5 nos dispositivos Firefox OS e no Simulador diretamente do seu navegador.

No navegador Firefox versões 26 e superiores, abra o App Manager usando Tools > Web Developer > App Manager. Clique em Iniciar Simulador (uma vez que esteja instalado) e você está pronto para testar o Firefox OS.

B2G Desktop

B2G Desktop é um binário para executar no desktop do app runtime utilizado nos dispositivos Firefox OS que você pode usar para executar o Gaia no seu computador.

Você pode baixá-lo diretamente em versão nightly do B2G desktop do site do Firefox Nightly. Dependendo de qual versão você está trabalhando, você querer uma versão específica do latest-mozilla-b2g18. Existem binários para Linux (32 bit and 64 bit), Mac OS X e Windows.

Os binários Nightly vêm com a versão mais recente do Gaia. Uma vez que você tenha baixado o arquivo, tudo o que você precisa fazer é descompactá-lo em um diretório e executar o binário b2g.

$ cd b2g
$ ./b2g

Para executar o B2G com sua própria versão do Gaia para fins de desenvolvimento, antes você precisa compilar um perfil a partir do seu clone:

$ cd /path/to/gaia
$ DEBUG=1 DESKTOP=0 make

Isso irá gerar um subdiretório no seu diretório gaia chamado profile. O parâmetro DEBUG executa o Gaia como aplicativos hospedados em um servidor web interno, ao invés do padrão que são os aplicativos empacotados, que devem ser reempacotados a cada alteração. Você vai saber qual o diretório criado observando a última linha da saída do comando acima, que vai se paracer como:

Profile Ready: please run [b2g|firefox] -profile /path/to/gaia/profile

Então, você pode executar o B2G Desktop com o seu perfil compilado executando:

$ ./b2g /path/to/gaia/profile

Você também pode criar o seu próprio binário do B2G desktop a partir do fonte.

Nota: No Mac OS X, o binário b2g fica em um subdiretório do B2G.app. Para executar o B2G Desktop nessa plataforma, execute o seguinte comando:
./B2G.app/Contents/MacOS/b2g /path/to/gaia/profile

Usando o Gaia no Firefox Desktop

Também é possível executar o Gaia no navegador Firefox. A grande vantagem é que você terá um ciclo de desenvolvimento rápido bem como ferramentas com padrões abertos para o desenvolvimento e depuração. Veja o artigo Executando o codebase do Gaia para detalhes de como fazer isso.

Nota: FoxBox é um binário do Firefox OS executado em uma VM (Virtual Machine),  is a Firefox OS build environment contained in a VM (Virtual Machine), executado pelo Vagrant and VirtualBox. Isso traz diversas vantagens, dentro das quais a prinicipal é que diversas configurações já vêm prontas, o que faz com que você se preocupe apenas com o trabalho de desenvolvimento. Para instruções completas, leaia o arquivo README no repositório do FoxBox no GitHub.

Fazendo um Flashing do Gaia em um dispositivo real

Para o flash do Gaia no dispositivo real:

  1. Certifique-se de ter clonado o repo do Gaia no seu computador e ter o ADB instalado.
  2. Habilite a opção de Depuração via USB.
  3. Conecte o dispositivo ao computador via USB.
  4. Se houver um dispositivo conectado, você pode executar os seguintes comendos. Se o seu sistema operacional for Windows ou Linux você pode precisar verificar os drivers do USB para configurar corretamente a conexão no seu computador.
  5. Execute o seguinte comando no repo Gaia para atualizar o código fonte do Gaia:
    $ make reset-gaia
  6. Para testar os aplicativos que não forem do sistema, você pode instalá-los sem a necessidade de reinicializar o dispositivo usando o seguinte comando:
    $ make install-gaia
  7. Se você quiser instalar apenas um aplicativo específico, você pode usar a variável APP, como o exemplo seguir:
    $ make install-gaia APP=browser

Nota: Para copiar o Gaia para o seu dispositivo use make install-gaia / make reset-gaia para compilar o Gaia com resolução 1x por padrão. Para especificar resoluções mais altas, você precisa usar a opção do make GAIA_DEV_PIXELS_PER_PX ou GAIA_DPPX (veja Opção de Imagens de alta resolução para maiores detalhes dessa opção) Quando copiar o Gaia para o seu dispositivo dessa forma, você deve especificar a opção que mais se adeque ao seu dispositivo, por exemplo, make install-gaia GAIA_DEV_PIXELS_PER_PX=1.5 para o dispositivo Flame (ou 2, or 2,5, etc, veja os valores na tabela "512 icon for device display".)

Para verificar se o seu dispositivo está corretamente conecatado ao seu computador via USB, você pode executar:

$ adb devices

Que apresentará um resultado como esse:

List of devices attached
emulator-5554  device

Compilando o Gecko e o Gaia usando em um emulador ou num dispositivo real

Se você tem um dispositivo compatível, você pode compilar ou instalar sua própria versão do Firefox OS e então executá-lo no Emulador ou copiá-lo para seu dispositivo.

Etiquetas do documento e colaboradores

 Colaboradores desta página: chrisdavidmills, jwhitlock, rbrandao
 Última atualização por: chrisdavidmills,