Solução de problemas do Android Emulator
Neste artigo, são descritas as mensagens de aviso e os problemas mais comuns que ocorrem durante a execução do Android Emulator. Além disso, ele descreve soluções para resolver esses erros e várias dicas de solução de problemas para ajudá-lo a diagnosticar problemas do emulador. Para obter mais informações, consulte Solucionar problemas conhecidos com o emulador Android no developer.android.com.
Problemas de implantação no Windows
Algumas mensagens de erro podem ser exibidas pelo emulador quando você implanta o aplicativo. Os erros e soluções mais comuns são explicados aqui.
Erros de implantação
Se vir um erro sobre uma falha ao instalar o APK no emulador ou sobre uma falha ao executar o Android Debug Bridge (adb), verifique se o SDK do Android pode se conectar ao emulador. Para verificar a conectividade do emulador, use as seguintes etapas:
Inicie o emulador a partir do Gerenciador de dispositivos Android (selecione seu dispositivo virtual e selecione Iniciar).
Abra um prompt de comando e vá para a pasta em que o adb está instalado. Se o SDK do Android estiver instalado em seu local padrão, o adb estará localizado em C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe; caso contrário, modifique esse caminho para o local do SDK do Android no seu computador.
Digite o seguinte comando:
adb devices
Se o emulador puder ser acessado pelo SDK do Android, ele deverá aparecer na lista de dispositivos anexados. Por exemplo:
List of devices attached emulator-5554 device
Se o emulador não aparecer nessa lista, inicie o Gerenciador do SDK do Android, aplique todas as atualizações e tente iniciar o emulador novamente.
Erro ao acessar o MMIO
Se for exibida a mensagem Ocorreu um erro de acesso de MMIO, reinicie o emulador.
Google Play Services ausente
Se o dispositivo Android emulado não tiver o Google Play Services ou a Google Play Store instalados, você provavelmente criou um dispositivo virtual que excluiu esses pacotes. Ao criar um dispositivo virtual, certifique-se de selecionar uma ou ambas as seguintes opções:
- APIs do Google: inclui o Google Play Services no dispositivo virtual.
- Google Play Store – inclui a Google Play Store no dispositivo virtual.
Por exemplo, este dispositivo virtual incluirá o Google Play Services e o Google Play Store:
Observação
Imagens do Google Play Store estão disponíveis apenas para alguns tipos de dispositivos básicos, como Pixel, Pixel 2, Nexus 5 e Nexus 5X.
Problemas de desempenho
Problemas de desempenho normalmente são causados por um dos seguintes problemas:
- O emulador está em execução sem aceleração de hardware.
- O dispositivo virtual em execução no emulador usando uma imagem baseada em Arm.
As seções a seguir tratam desses cenários com mais detalhes.
A aceleração de hardware não está ativada
Quando você inicia um dispositivo virtual e não tem a aceleração de hardware habilitada, o Gerenciador de dispositivos exibe uma caixa de diálogo de erro semelhante à seguinte imagem:
Para corrigir esse erro, siga as etapas de solução de problemas na seção Problemas de aceleração de hardware.
Problemas de aceleração de hardware
Ao usar a aceleração de hardware, você pode ter problemas de configuração ou conflitos com outro software no computador. A primeira etapa na solução de problemas é verificar se a aceleração de hardware está habilitada. Você pode usar o SDK do Android para verificar essa configuração. Abra um prompt de comando e digite o seguinte comando:
"C:\Program Files (x86)\Android\android-sdk\emulator\emulator-check.exe" accel
Esse comando pressupõe que o SDK do Android esteja instalado no local padrão de C:\Program Files (x86)\Android\android-sdk. Se o SDK do Android estiver instalado em outro lugar, modifique o comando anterior para o local correto.
Dica
Verifique se o emulador Android está atualizado. No Visual Studio, pressione Ferramentas>Android>Android SDK Manager. Selecione a guia Ferramentas e veja se a entrada do emulador Android tem uma atualização disponível.
Configurações incorretas de BIOS
Se o BIOS não tiver sido configurado corretamente para suportar aceleração de hardware, uma mensagem semelhante ao exemplo a seguir será exibida quando você executar o comando emulator-check.exe accel :
VT feature disabled in BIOS/UEFI
Para corrigir esse problema, reinicialize o BIOS do computador e habilite as seguintes opções:
- Tecnologia de virtualização (pode ter um rótulo diferente dependendo do fabricante da placa-mãe).
- Prevenção de Execução de Dados Baseada em Hardware.
Se ainda ocorrerem problemas devido a problemas relacionados ao Hyper-V, consulte a seção a seguir.
Problemas do Hyper-V
Em alguns casos, habilitar o Hyper-V e a Plataforma de Hipervisor do Windows na caixa de diálogo Ativar ou desativar recursos do Windows pode não habilitar adequadamente o Hyper-V. Para verificar se o Hyper-V está habilitado, use as seguintes etapas:
Digite PowerShell na caixa de pesquisa do Windows.
Clique com o botão direito do mouse em Windows PowerShell nos resultados da pesquisa e selecione Executar como administrador.
No console do PowerShell, insira o seguinte comando:
Get-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V-All -Online
Se o Hyper-V não estiver habilitado, uma mensagem semelhante ao exemplo a seguir será exibida para indicar que o estado do Hyper-V está desabilitado:
FeatureName : Microsoft-Hyper-V-All DisplayName : Hyper-V Description : Provides services and management tools for creating and running virtual machines and their resources. RestartRequired : Possible State : Disabled CustomProperties :
No console do PowerShell, insira o seguinte comando:
Get-WindowsOptionalFeature -FeatureName HypervisorPlatform -Online
Se o Hypervisor não estiver habilitado, uma mensagem semelhante ao exemplo a seguir será exibida para indicar que o estado de HypervisorPlatform está desabilitado:
FeatureName : HypervisorPlatform DisplayName : Windows Hypervisor Platform Description : Enables virtualization software to run on the Windows hypervisor RestartRequired : Possible State : Disabled CustomProperties :
Se o Hyper-V ou o HypervisorPlatform não estiverem habilitados, use os seguintes comandos do PowerShell para habilitá-los:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform -All
Após a conclusão desses comandos, reinicialize.
Para obter mais informações sobre como habilitar o Hyper-V (incluindo técnicas para habilitar o Hyper-V usando a ferramenta Gerenciamento e Manutenção de Imagens de Implantação ), confira Instalar o Hyper-V.
Mais dicas de solução de problemas
As sugestões a seguir costumam ser úteis para diagnosticar problemas do Android Emulator.
Iniciar o emulador da linha de comando
Se o emulador ainda não estiver em execução, você poderá iniciá-lo a partir da linha de comando (em vez de dentro do Visual Studio) para exibir sua saída. Normalmente, as imagens AVD do emulador Android são armazenadas no seguinte local: %userprofile%\.android\avd.
Você pode iniciar o emulador com uma imagem de AVD desta localização passando o nome da pasta do AVD. Por exemplo, esse comando inicia um AVD chamado Pixel_API_27:
"C:\Program Files (x86)\Android\android-sdk\emulator\emulator.exe" -partition-size 2000 -no-boot-anim -verbose -feature WindowsHypervisorPlatform -avd pixel_5_-_api_30 -prop monodroid.avdname=pixel_5_-_api_30
Esse comando pressupõe que o SDK do Android esteja instalado no local padrão de C:\Program Files (x86)\Android\android-sdk. Se o SDK do Android estiver instalado em outro lugar, modifique o comando anterior para o local correto.
Exibir logs do Device Manager
Com frequência, você pode diagnosticar problemas do emulador exibindo os logs do Device Manager. Esses logs são gravados no seguinte local: %userprofile%\AppData\Local\Xamarin\Logs\16.0.
Você pode exibir cada arquivo .log DeviceManager usando um editor de texto.