Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Usando emuladores B2G

Este artigo fornece um breve guia para algumas coisas importantes que você deveria saber quando usar o emulador Boot to Gecko.

Este guia assume que você já contruiu um dos emuladores; Caso contrário, veja Instalando e compilando o Boot to Gecko!

Sobre os emuladores B2G

Existem dois emuladores B2G. O primeiro construido por meio da configuração de "emulator-x86" quando roda o config.sh, é um emulador para dispositivos ARM. Apesar de ser mais lento que o executado em um processador x86, é mais estável e tem uma representação mais precisa de como o dispositivo real irá funcionar. Configurando como "emulator-x86" quando executar config.sh você terá o emulador x86.

Nota: Nos últimos meses, a equipe de Automação resolveu parar a utilização do emulador x88 devido a problemas de estabilização. Por isso, há uma grande chance das coisas não funcionarem no emulador x86. Utilize o emulador ARM a não ser que você tenha uma boa razão para não fazê-lo.

Uma vez selecionado, configurado e compilado um emulador, o restante funciona da mesma forma segundo o ponto de vista do usuário. Então o restante desse artigo é comum para ambos os emuladores.

Nota:  No Mac OS X, o emulador B2G exige um processador Core 2 Duo ou superior, ou seja, um sistema compatível com Mac OS X 10.7 "Lion." Na verdade, não é necessário exectura no "Lion", mas ser compatível com ele.

Iniciando o Emulador

Para inicializar o emulador do B2G, digite o seguinte comando:

./run-emulator.sh

Esse comando realiza todas as tarefas de incialização do emulador para você. Você tem que ser paciente enquanto o emulador inicializa e depois a inicialização do Boot to Gecko. Isso pode levar alguns minutos.

Quando o emuladora nao funciona

Algumas vezes o emulador falha na incialização. Bem-vindo ao time! A seguir algumas dicas para resolver os problemas.

Você está tentando executar em uma máquina virutal?

VirtualBox e Parallels possui alguns problemas no suporte ao acelerador gráfico que causa uma falha na inicialização do emulador, algo relacionado com o dispositivo OpenGL. O dispositivo inicia o boot, falah e reinicia em um loop, ou inicia sem mostrar nada no emulador. Infelizmente ainda não há solução disponível (existe uma solução de contorno para VirtualBox) - você precisa usar o VMWare Player (Freeware), Workstation ou Fusion. Para o VirtualBox - não instale Guest Addons, ou desabilite o módulo vboxvideo.

Certifique-se que o servidor adb está executando

Isso geralmente acontece porque o servidor adb que interage com o dispositivo emulado pode não estar rodando com um mal funcionamento.

Nota: Se você está usando o adb compilado pelo sistema de compilação B2G (o que provavelmente é o usado), ele está localizado no diretório $B2G/out/host/<platform>/bin. No Mac, o diretório é $B2G/out/host/darwin-x86/bin, por exemplo.

Para verificar se o adb está rodando execute:

ps aux | grep adb

Se está rodando, interrompa a execução porque provavelmente ele não está funcionando corretamente.

adb kill-server

Se o serviço não está rodando execute:

adb start-server

Então, tente executar o emulador novamente. Se ainda não funcionar, é hora de ir para o canal IRC #b2g em irc.mozilla.org para conseguir ajuda.

Configurando o emulador

There are several options you can change to adjust the emulator to be more similar to the device you want to emulate. This section provides some basic information on how to do that. You can adjust the emulator's configuration by editing the run-emulator.sh script (or, ideally, a copy of it). Only a few of the most useful parameters are discussed here; you'll want to look at the qemu site for details on the others.

Tip: Create one copy of run-emulator.sh for each device you want to simulate; this makes it easy to start up with different configurations.

Apagar as definições da configuração

Algumas vezes, configurações desatualizadas no seu dispositivo emulado pode causar um comportamento estranho. Você pode apagar o banco de dados IndexDB seguindo as instruções:

  1. Certifique-se de que o adb está rodando, como descrito em  Certifique-se que o servidor adb está executando.
  2. Inicie o emulador.
  3. Abra o terminal no computador que executa o emulador, vá para o diretório raiz da compilação do seu emulador e digite: out/host/<platform>/bin/adb -e shell; no Mac, o diretório pode ser out/host/darwin-x86/bin/adb -e shell.
  4. Agora que você está no shell do adb você pode executar comandos shell no seu dispositivo emulado. Pare o serviço B2G no dispositivo: stop b2g.
  5. Apague o banco de dados IndexDB: rm -rf /data/local/indexedDB.
  6. Reinicie o B2G no dispositivo emulado: start b2g.

É esperado que nesse ponto você chegue na interface do Gaia e tudo corra bem.

Se o emulador começa mas a tela fica preta após a tela inicial "mozilla technology"

Caso isso aconteca, pode ser um bug do drive da máquina que está executando o emulador. Pode acontecer no drive Nouveau Open Source do Linux. A solução mais simples é substituir os drives da máquina. Nesse caso deve-se instalar o drive Nouveau proprietário ("adicional no Ubuntu). No caso do chipset gráfico da Intel, o drive open source pode causar um erro no emulador: 'eglMakeCurrent failed' que parece suportar uma versão OpenGL inferior ao necessária para a emulação (2.0 GPU). A solução é desativar o GPU através da edição do script run-emulator.sh (neste caso será mais lento).

Alterando skins

Por padrão, o emulador incia no modo HVGE, que é metade do modo VGA, ou 320x480 pixels. Isso é especificado no parâmetro -skin que é passado ao emulador ao iniciar. Você pode alterar para um modo diferente alterando o script run-emulator.sh (ou, de preferência, uma cópia dela). Os skins disponíveis são:

  • HVGA (320x480)
  • QVGA (240x320)
  • WQVGA (240x400)
  • WQVGA432 (240x432)
  • WSVGA (1024x600)
  • WVGA800 (480x800)
  • WVGA854 (480x854)
  • WXGA720 (1280x720)
  • WXGA800 (1280x800)

Os skins ficam armazenados no diretório B2G/development/tools/emulator/skins. É importante notar que o formato dos skins são muito simples, se você observar vai perceber que são pastas simples com arquivos PNG para os diversos objetos de interface de usuário e um arquivo texto chamado layout que descreve o layout da interface e a área da tela. É muito simples criar skins personalizados se desejar.

Alterando tamanho de memoria

Outra opção que você pode ou necessita configurar é a memória do dispositivo. O valor padrão é 512 MB, portanto se o dispositivo que você está emulando possui mais ou menos memória, seria importante ajustar o valor para garantir que os aplicativos serão executados em condições similares ao dispositivo. Para fazer isso altere o valor do parâmetro -memory para o tamanho desejado em megabytes. Além do valor padrão de 512 MB, 256 MB e 1024 são prováveis valores que você queira testar.

Para alterar a capacidade de armazenamento do dispositivo emulado (ou seja, o espaço disponível para dados locais, como cartão de memória num telefone móvel ou disco rígido num computador), altere o valor do parâemtro -partition-size. O valor padrão é 512 MB, mas você pode especificar qualquer outro valor em MB para simular o dispositivo a ser testado.

Conectividade de Rede

Se por alguma razão você não conseguir conectar seu emulador à internet você pode executar o seguinte comando a partir do terminal:

adb shell setprop net.dns1 10.0.2.3

Se você executar o emulator-jb ou emulator-kk, o comando para configurar o servidor NDS é diferente.
Então execute os seguintes comandos:

adb shell ndc resolver setdefaultif eth0
adb shell ndc resolver setifdns eth0 10.0.0.0 10.0.2.3

Etiquetas do documento e colaboradores

 Última atualização por: jwhitlock,