Pular para o conteúdo

Dispositivos

Aqui, um dispositivo é um Android Virtual Device (AVD) no seu Mac. A página mostra um dispositivo por vez.

A lista à esquerda mostra cada AVD informado por emulator -list-avds. Para cada um, ela mostra:

  • o nome;
  • a resolução da tela;
  • a versão do Android;
  • o estado: parado, inicializando (com os segundos decorridos), em execução, ou em execução mas sem possibilidade de assumir o controle;
  • um botão de iniciar ou parar.

Resolução, RAM e versão do Android vêm do config.ini de cada AVD em ~/.android/avd/<name>.avd/. Se você definir ANDROID_AVD_HOME, o gateway lê esse diretório em vez disso. Se um campo estiver ausente no config.ini, ele fica em branco.

Clique em iniciar ao lado de um dispositivo. O gateway executa:

Janela do terminal
emulator -avd <name> -no-window -grpc <port> -no-boot-anim -gpu host
  • -no-window significa que nenhuma janela separada do emulador é aberta. A tela aparece apenas na página.
  • A porta gRPC é a primeira porta par livre a partir de 8554.
  • O dispositivo é considerado inicializado quando adb -s emulator-<serial> shell getprop sys.boot_completed retorna 1. Até lá, a página mostra o progresso.
  • Se o dispositivo não tiver inicializado após 180 segundos, a inicialização falha e o gateway encerra o processo do emulador.

Clicar em iniciar de novo enquanto um dispositivo está inicializando não inicia uma segunda cópia. Se você fechar a página durante a inicialização e abri-la novamente, o progresso continua.

Clique em parar. O gateway executa adb -s emulator-<serial> emu kill.

O gateway encontra emuladores em execução pelos arquivos que o emulador grava em ~/Library/Caches/TemporaryItems/avd/running/. Se um emulador estiver rodando com gRPC ativado, por exemplo um que você iniciou com -grpc <port>, o gateway se conecta a ele em vez de iniciar outra cópia.

Um emulador que roda sem gRPC é marcado como “em execução mas sem possibilidade de assumir o controle”. O gateway precisa do gRPC para ler a tela e enviar entradas. Pare esse emulador e inicie-o pela página.

Parar o gateway não para os emuladores. Quando você inicia o gateway novamente, ele se conecta a eles de novo.

Se você não tiver nenhum AVD, o gateway oferece, na primeira execução, criar emu_web_default: perfil Pixel 5, imagem de sistema arm64 para Android 14 (API 34), 4096 MB de RAM, 1080×2340. Veja Primeira execução. Você também pode criar dispositivos com o avdmanager ou com o Android Studio; a lista os detecta.