Esta página lista problemas conhecidos, soluções alternativas e dicas de solução de problemas para o Android Emulator. Se você encontrar um problema não listado aqui ou não conseguir usar uma destas soluções alternativas, informe um bug.
Problemas gerais
O Google Maps não aparece nos controles estendidos do Android Emulator.
A partir de meados de maio, as versões do Android Emulator anteriores à 34.2.13 não terão mais um Google Maps funcional nos controles estendidos. Os emuladores mais antigos vêm com uma versão do Chromium incompatível com a API JavaScript do Google Maps.
Conferir se há espaço suficiente em disco
Para evitar falhas e travamentos causados pela falta de espaço livre em disco, o emulador verifica se há espaço suficiente na inicialização e não inicia a menos que haja pelo menos 5 GB livres. Se ele não for iniciado, confira se você tem o espaço livre necessário em disco.
Software antivírus
Como muitos pacotes de software de segurança e antivírus monitoram todas as operações de leitura e gravação, o uso desses softwares pode diminuir a performance de ferramentas como o Android Emulator.
Muitos pacotes antivírus incluem o recurso de adicionar aplicativos específicos a uma lista de apps confiáveis, o que permite que eles funcionem sem prejudicar a performance. Caso o app apresente uma performance ruim ao salvar ou carregar snapshots do AVD, adicione o Android Emulator como um aplicativo confiável no software antivírus para tentar proporcionar uma melhora.
A maneira como a performance é afetada difere entre os vários pacotes de software antivírus existentes. Se houver outro software antivírus instalado, além do que está incluído no seu sistema operacional, é possível executar testes simples para determinar qual antivírus causa maior efeito sobre a performance das operações de carregamento e salvamento do emulador.
Alguns softwares antivírus podem ser incompatíveis com o Android Emulator.
Se você estiver usando o Avast e enfrentar problemas para executar o Android Emulator, desative as opções Usar virtualização aninhada quando disponível e Habilitar a virtualização assistida por hardware nas configurações de Solução de problemas do software. Além disso, depois de desativar a virtualização por hardware no Avast, verifique mais uma vez se o HAXM está configurado corretamente com a reinstalação completa do HAXM mais recente pelo SDK Manager.
No Windows, às vezes o AVD congela com o HAXM, e o problema pode ser resolvido desinstalando completamente o McAfee.
Windows: liberar RAM e carga de confirmação
Quando o emulador é iniciado, ele precisa inicializar a RAM do sistema operacional convidado do Android. No Windows, o emulador solicita que o sistema considere o tamanho total da memória do convidado na inicialização, mesmo que a memória possa ser paginada sob demanda durante a operação real. O emulador solicita a quantidade total de memória do convidado na inicialização porque o Windows prefere garantir que haja espaço suficiente disponível na RAM física e no arquivo de paginação para receber todo o conjunto de trabalho em potencial. Esse procedimento serve como preparação para a pior das hipóteses, em que toda a memória do convidado é tocada rapidamente, sem nenhuma oportunidade de descarte ou liberação da memória.
Às vezes, quando o emulador solicita que o Windows contabilize o tamanho total da memória de convidado, a solicitação excede o limite de confirmação atual, que é o total da RAM física e do arquivo de paginação disponíveis. Nesse caso, o Windows não pode garantir que o conjunto de trabalhos caiba na RAM física ou no arquivo de paginação na pior das hipóteses e, portanto, o emulador falha ao iniciar.
Em casos típicos, a quantidade de espaço no disco rígido alocada para o arquivo de paginação mais a RAM física é mais do que suficiente para a maioria dos casos de uso do emulador. No entanto, se você tiver falhas ao iniciar o emulador por exceder o limite de confirmação, recomendamos examinar a carga de confirmação atual, que pode ser vista na guia Desempenho no Gerenciador de Tarefas do Windows. Para abrir o gerenciador de tarefas, pressione Ctrl+Shift+Esc.
É possível diminuir a probabilidade de exceder o limite de confirmação de várias maneiras:
- Libere RAM física antes de iniciar o emulador, fechando aplicativos e arquivos não utilizados.
- Desative os utilitários de gerenciamento e compactação de memória de terceiros. Esses utilitários podem causar de maneira ineficiente uma carga de confirmação excessiva e aproximar seu sistema do limite de confirmação.
Use um tamanho gerenciado pelo sistema para o arquivo de paginação do Windows. Assim, esse arquivo pode aumentar de forma mais flexível e dinâmica e, consequentemente, o limite de confirmação também pode aumentar em resposta à maior demanda do emulador e de outros apps.
Para ter mais informações sobre cargas de confirmação e por que uma configuração flexível funciona melhor, consulte este artigo da Microsoft (em inglês).
O multitoque não funciona na janela de ferramentas
Os gestos multitoques, incluindo os movimentos com dois dedos, não funcionam quando o emulador está sendo executado em uma janela de ferramentas. Para ativar o multitoque, inicie o emulador em uma janela separada.
O emulador prejudica a saída de áudio via Bluetooth
Caso esteja usando fones de ouvido com Bluetooth, talvez você observe que a saída de áudio do fone é prejudicada ao executar o emulador (problema 183139207). Isso acontece porque, quando o emulador é iniciado, ele ativa o microfone do fone de ouvido, o que faz com que o dispositivo passe para o modo duplex, com qualidade reduzida.
Para evitar esse problema, você pode desativar o microfone no emulador, adicionando
hw.audioInput=no
ao arquivo config.ini
do Dispositivo virtual Android (AVD, na sigla em inglês).
Para encontrar o arquivo config.ini
do dispositivo virtual, acesse o AVD no Gerenciador de dispositivos, clique
no menu flutuante e selecione Show on Disk.
Falha ao iniciar dispositivos virtuais Android no ChromeOS
No ChromeOS, os dispositivos virtuais Android (AVDs) podem não ser iniciados porque a
dependência libnss3
está ausente. Para iniciar os AVDs, execute
sudo apt install libnss3
e instale manualmente a biblioteca libnss3
.
Avisos de sensor de inclinação de pulso no Wear OS
No Wear OS, o emulador pode registrar repetidamente a seguinte mensagem sobre
o sensor de inclinação do pulso:
the host has not provided value yet for sensorHandle=16
Os desenvolvedores podem ignorar esses avisos.
A janela do emulador incorporada é muito pequena
Em máquinas com resolução mais baixa, como 1024 x 768, pode ser difícil ler a tela do emulador quando ela é executada em uma janela de ferramentas no Android Studio. Para dar mais espaço ao emulador, feche a janela de ferramentas Device Manager se ela estiver aberta. Você também pode extrair a janela do emulador do Android Studio. Para isso, na janela do emulador, clique em Settings > View Mode e selecione Window, em vez de Dock Pinned.
Problemas gráficos
O Android Emulator é executado lentamente após uma atualização
Vários fatores externos podem fazer que o Android Emulator comece a funcionar lentamente após uma atualização. Para iniciar a solução de problemas, recomendamos as seguintes etapas:
- Se você tem uma GPU Intel (especialmente a Intel HD 4000), é necessário fazer o download do driver de placa gráfica Intel mais recente e instalá-lo.
- Se a máquina tiver uma GPU Intel e uma GPU discreta, desative a GPU Intel no Gerenciador de dispositivos para garantir que você esteja usando a GPU discreta.
- Execute o emulador usando o modo
-gpu swiftshader
. Para mais informações sobre como configurar opções de aceleração de gráficos na linha de comando, consulte Configurar aceleração de hardware. - Verifique se o roteador não está usando endereços IPv6 caso você não tenha uma conexão IPv6.
Se ainda assim a execução do Android Emulator continuar lenta, informe um bug, incluindo as informações necessárias sobre o Android Emulator para que possamos investigar.
Erro: vulkan-1.dll não foi encontrado
Se a inicialização do emulador falhar devido ao erro vulkan-1.dll cannot be found
,
provavelmente vai ser necessário atualizá-lo. Para atualizar o emulador no Android
Studio, acesse Tools > SDK Manager e instale a versão estável mais recente da
plataforma Android.
Como alternativa, se você não precisar de nenhum app que use a
biblioteca gráfica Vulkan, desative
o Vulkan
iniciando o emulador pela linha de comando
com a flag -feature -Vulkan
.
Não foi possível criar um snapshot
Não é possível criar um snapshot do
emulador que inclui a biblioteca de gráficos
Vulkan. Para executar o emulador sem Vulkan,
inicie o emulador pela linha de comando
com a flag -feature -Vulkan
. Você também pode desinstalar e evitar
o uso de apps com o Vulkan (como o Chrome na API 30 ou mais recente) se quiser usar
snapshots como parte do fluxo de trabalho de desenvolvimento.
Não é possível abrir a página da Web corretamente
No nível 30 da API e mais recentes, o Chrome usa a
biblioteca gráfica Vulkan como
o back-end de renderização e pode apresentar problemas de compatibilidade em
algumas máquinas. Se o Chrome não for renderizado corretamente, tente
iniciar o emulador pela linha de comando
com a flag -feature -Vulkan
.
Aviso de driver da GPU: retorno ao software
Se você receber um aviso sobre a falha do driver da GPU, talvez esteja usando uma GPU sem suporte. Por padrão, a opção automática é usada, que pode selecionar a renderização de software. Se você escolher o hardware, poderá forçar o uso da renderização de hardware. Uma mensagem de aviso ainda poderá aparecer.
Para imagens que não são da Play Store, use o Gerenciador de dispositivos -> 3 pontos -> "Editar". No caso de imagens da Play Store, você precisa editar manualmente estes dois arquivos de configuração:
~/.android/your_avd_name.avd/config.ini
~/.android/your_avd_name.avd/hardware-qemu.ini
e mudar hw.gpu.mode
para host
.
Isso pode reduzir a estabilidade do emulador. Consulte o bug para mais detalhes.
O emulador não inicializa na Área de trabalho remota do Chrome para Windows
Se o emulador não inicializar ao usar a Área de trabalho remota do Google Chrome no Windows, a solução alternativa recomendada atual será usar uma flag de gpu, como -gpu host ou -gpu swiftshader.
O emulador se comporta incorretamente no macOS no modo de renderização de hardware
Em dispositivos Mac com Apple Silicon, o emulador usa a
biblioteca MoltenVK para a API Vulkan quando
o modo de renderização de hardware é selecionado. Embora o MoltenVK geralmente ofereça uma performance muito melhor, a biblioteca não oferece suporte a todos os recursos do Vulkan. Em caso de
problemas de compatibilidade, como falhas na compilação de sombreador, falhas gráficas ou
travamentos nos apps, mude o modo de renderização para software
nas configurações do AVD ou use o argumento de linha de comando -gpu swiftshader
.
Como alternativa, é possível desativar o suporte ao Vulkan com o argumento -feature -Vulkan
para continuar usando a aceleração de hardware em apps GLES.
Problemas com a rede
Sem Internet: o endereço DNS do servidor não foi encontrado
Se o emulador não puder se conectar à Internet, tente
iniciar o emulador pela linha de comando
usando a opção
-dns-server “2001:4860:4860::8844,2001:4860:4860::8888,8.8.8.8,8.8.4.4”
. Esse comando fornece uma lista separada por vírgulas de endereços IP do DNS público do Google. Para
mais informações sobre o DNS público do Google, consulte
DNS público do Google para seus dispositivos.
Sem Internet: problemas de resolução de DNS
Às vezes, endereços DNS no arquivo /etc/resolv.conf
não funcionam corretamente.
A solução para esse problema é:
iniciar o emulador pela linha de comando
usando a opção -dns-server 8.8.8.8
ou -dns.server 2001:4860:4860::8888
para
se conectar em uma rede somente IPv6.
Problemas antigos (em emuladores descontinuados ou sistemas antigos)
Não foi possível iniciar o AVD
Um AVD pode não ser iniciado quando há um relatório de erros para um emulador mais recente
(problema 281725854). Esse
problema ocorre apenas para usuários que atualizaram da versão canário 33.x para 32.1.13,
tiveram uma falha na última vez que executaram a versão 33.x e não reiniciaram
o AVD desde então, mantendo o diretório %TEMP%
ou /tmp
ativado. Se você
tiver esse problema, tente limpar o diretório %TEMP%
(/tmp
no
Linux ou macOS).
Windows: o emulador não será iniciado se houver Unicode no nome do AVD.
No Windows, quando o Gerenciador de dispositivos cria um Dispositivo virtual Android (AVD),
por padrão, ele é criado em C:\Users\<name>\.android\avd
. No entanto, se o nome
do AVD (<name>
) tem Unicode, o emulador não pode iniciá-lo corretamente usando
esse local padrão.
Isso foi corrigido na versão 31.3.6 e mais recentes do emulador. Para resolver esse problema, atualize o emulador em Tools > SDK Manager.
Como solução alternativa, defina a variável de ambiente
ANDROID_SDK_HOME
como um diretório personalizado antes de criar um AVD. Por exemplo,
crie o diretório C:\Android\home
e defina ANDROID_SDK_HOME
para
esse diretório recém-criado. Para saber mais, consulte Variáveis
de ambiente.
Os hipervisores não podem emular determinados recursos de CPU exigidos por sistemas Android x86.
Geralmente, os hipervisores não podem emular alguns recursos de CPU, como as extensões de SIMD de streaming (SSE) (link em inglês), exigidas pelos sistemas Android x86.