Para usar dispositivos virtuais Android (AVDs), o Android Emulator oferece suporte a uma interface gráfica do usuário (GUI) e uma interface de linha de comando (CLI). Você seleciona o fluxo de trabalho ideal para seu ambiente.
- Criar e gerenciar dispositivos virtuais A GUI é uma ferramenta simples fornecida para a maioria dos desenvolvedores e usuários de apps.
- Iniciar o emulador pela linha de comando oferece uma maneira flexível para usuários avançados e automação. Por exemplo, para usar vários AVDs ou configurar testes e integração contínua. Para começar, consulte os exemplos em ferramentas.
Iniciar um AVD do AOSP para carro usando o pré-build
Para iniciar e testar rapidamente usando o AVD do carro do AOSP pré-criado, use um script de código aberto para fazer o download
e iniciar um build do emulador em
ci.android.com
. O script foi testado no
macOS e no Linux.
Você vai precisar do Curl para usar esse script.
Para executar o script:
- Copie o conteúdo do script
launch_emu.sh
para o arquivo local, supondo que você uselaunch_emu.sh
como nome do arquivo local. - Torne o script local executável. Por exemplo, execute
chmod +x ./launch_emu.sh
. - Para conferir as opções disponíveis, execute o script com
./launch_emu.sh -h
. - Em
ci.android.com
, acesse a filialaosp-main-throttled
e selecione um build recente em quesdk_car_x86_64
esteja verde. Por exemplo, 11370359. Se as informações de build não aparecerem, saia da sua Conta do Google e tente de novo. - Faça o download e instale os arquivos binários relevantes para o emulador com o ID do build. Por exemplo,
./launch_emu.sh -i -a 11370359
. - Depois disso, use
./launch_emu.sh
para iniciar o emulador instalado e transferido por download (não use as opções-i
ou-a
). - Para fazer o download e instalar outro ID de build, execute
./launch_emu.sh -c
para limpar o espaço de trabalho e repita as etapas 4 e 5 acima.
Para especificar as
Opções de inicialização de linha de comando
do emulador Android ao iniciá-lo, use a opção -v
. Exemplo:
./launch_emu.sh -v “-cores 4 -memory 6144 -no-snapshot"
Criar um AVD de carro do AOSP
O processo de criação de um AVD do carro AOSP é semelhante ao Criação de imagens de AVD para um smartphone (por exemplo, aosp_car_x86_64):
- Para configurar o ambiente de desenvolvimento e identificar uma ramificação, consulte
Ferramentas de controle de origem. Em seguida, consulte
Como fazer o download da origem:
ANDROID_BRANCH="android12L-release"
REPO_URL="https://android.googlesource.com/platform/manifest"
mkdir $ANDROID_BRANCH && cd $ANDROID_BRANCH && repo init -u $REPO_URL -b $ANDROID_BRANCH --partial-clone && repo sync -c -j8 - Crie a imagem do AVD:
. build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
- Execute a imagem do AVD (adicione outras Opções de inicialização de linha de comando
conforme necessário):
emulator &
Exemplo:
Figura 1. Tela do Android Virtual Emulator
Observações sobre esse processo:
- Como o processo de build é o mesmo necessário para criar o Android para um dispositivo físico, reserve um tempo para fazer o download da fonte e criar.
- Para trabalhar em outras ramificações, defina
$ANDROID_BRANCH
como outra ramificação/tag. - As imagens do AVD, como
system.img
, são criadas em$ANDROID_PRODUCT_OUT
. Para saber mais sobre imagens de chave, consulte diretório do sistema AVD. - Consulte o arquivo README para saber como os binários de emulador pré-criados na árvore do Android são usados para executar o emulador.
Criar um AVD de carro
Adicionar um novo AVD de carro é quase idêntico a
Adicionar um novo dispositivo. Por exemplo,
1660554
cria um novo AVD avd_car
.
Para criar um AVD de carro:
- Crie uma empresa e uma pasta de dispositivo conforme necessário. O exemplo usa
$ANDROID_BUILD_TOP/device/google_car/avd_car
. - Crie o makefile do produto,
avd_car.mk
, que define como criar o AVD. - Crie uma pasta de dispositivo,
avd_car_device
, que contenhaBoardConfig.mk
esource.properties
. - Adicione a nova
makefile
e a nova opçãolunch
aAndroidProducts.mk
. - Para criar e executar o novo AVD
avd_car
:. build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
Empacotar um arquivo ZIP de imagem do AVD
Você pode empacotar e compartilhar seu AVD com outras pessoas ou usá-lo em outro
computador. Use emu_img_zip.mk
para gerar o arquivo zip de imagem do AVD:
- Depois de criar o AVD, defina
emu_img_zip
como o destino:m emu_img_zip
- O arquivo ZIP de imagem do AVD, com prefixo
sdk-repo-linux-system-images
, é criado na pasta$ANDROID_PRODUCT_OUT
.
Criar um kernel do AVD
Os kernels do AVD são semelhantes a outros kernels do Android porque são imagens pré-criadas. Normalmente, é possível usar as imagens pré-criadas do kernel goldfish padrão de cada versão do Android.
Para testar as mudanças do kernel:
- Execute a seguinte série de instruções:
mkdir goldfish-kernel-54 cd goldfish-kernel-54 repo init -u https://android.googlesource.com/kernel/manifest -b common-android11-5.4 repo sync BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.x86_64 build/build.sh ls -l ./out/android11-5.4/dist/
- Substitua o binário do kernel na base de código de acordo com o makefile do AVD. Por exemplo,
x86_64-vendor.mk
incluix86_64-kernel.mk
.
O código e a configuração do kernel estão localizados da seguinte maneira:
Nome | Valor |
---|---|
Filial | common-android11-5.4 (usado no Android 11) |
Manifesto | kernel/manifest/common-android11-5.4 |
common-modules/virtual-device | kernel/common-modules/virtual-device/android11-5.4 |
Kernel | kernel/common/android11-5.4 |
Criar um novo perfil de dispositivo
Para permitir que os usuários criem um AVD específico no AVD Manager do Android Studio, consulte
Criar e gerenciar dispositivos virtuais.
Os fabricantes de dispositivos podem definir as próprias especificações de hardware, como tamanho da tela e DPI,
usando um arquivo devices.xml
incluído na imagem do AVD.
- Por exemplo, consulte os perfis de dispositivos automotivos em
automotive.xml
. - Para desenvolvimento ou prototipagem de HMI, vários dispositivos podem ser adicionados ao arquivo para a mesma imagem do AVD.
- Inclua o arquivo no arquivo ZIP da imagem do AVD OEM na pasta
[ABI]
. Por exemplo, comox86_64
. - Os fabricantes de dispositivos também podem criar uma aparência do emulador. Por exemplo, para definir outros botões de hardware para uma UX de maior fidelidade. Isso não é útil apenas para fluxos de trabalho de desenvolvedores, mas também para outras tarefas, como pesquisa e revisão de UX.
Criar o arquivo XML da imagem do AVD
Os fabricantes de dispositivos podem criar um arquivo XML de imagem AVD para que o Android Studio faça o download dele.
- Por exemplo, consulte o arquivo XML de imagem do AVD do AAOS,
sys-img2-1.xml
. - Os fabricantes de dispositivos podem definir o próprio contrato de licença de AVD OEM para os usuários de destino (usando o sistema de honra), com a licença para o Android Emulator. O Android Studio recebe o consenso do usuário quando essa licença é incluída.
Para criar a imagem:
- Prepare um arquivo ZIP de imagem do AVD.
- Descompacte
${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip
. - Adicione
devices.xml
à pastax86_64
e compacte o arquivo em um arquivo ZIP. Por exemplo, comooem_avd_img_x86_64.zip
. - Atualize
oem-sys-img2-1.xml
. - Atualize o nome, o tamanho e o shasum do arquivo ZIP. Os arquivos XML de exemplo são fornecidos em
tools
.
Por exemplo, para hospedar o AVD no Cloud Storage do Google, consulte Criar buckets de armazenamento.
Para fazer upload e tornar o AVD acessível publicamente, consulte Como tornar os dados públicos:
BUCKET_NAME="aaos-avd" gsutil mb gs://$BUCKET_NAME gsutil cp oem_avd_img_x86_64.zip gs://$BUCKET_NAME gsutil cp oem-sys-img2-1.xml gs://$BUCKET_NAME gsutil iam ch allUsers:objectViewer gs://$BUCKET_NAME
O formato do URL do complemento do SDK de imagem do AVD é: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml
.
Por exemplo, se o BUCKET_NAME for aaos-avd, o URL será https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml
.
Compartilhar uma imagem de AVD com usuários do Android Studio
Para que os usuários possam fazer o download de imagens do AVD e usar o AVD no Android Studio, forneça um arquivo XML de complemento do SDK. Para saber mais, consulte Atualizar o ambiente de desenvolvimento integrado e as Ferramentas do SDK.
Para fazer o download do AVD da rede:
- Hospede o arquivo ZIP de imagem e os arquivos XML em um servidor.
- Forneça o URL aos usuários-alvo.
- (Opcional) Limite o acesso por nome de usuário e senha.
Como alternativa, para acelerar o desenvolvimento, faça o download do AVD para um diretório local:
- Salve os arquivos XML e todos os artefatos especificados no arquivo XML em uma pasta
(por exemplo, todos os arquivos ZIP de imagem do AVD) com o nome
ADDON_DIR
. - Especifique o URL como
file://$ADDON_DIR/oem-sys-img2-1.xml
.