Como habilitar a aceleração de hardware com emuladores Android (Hyper-V e AEHD)
Com o Visual Studio, você pode testar e depurar facilmente seu aplicativo .NET MAUI para Android em emuladores para situações em que um dispositivo Android não está disponível. No entanto, se a aceleração de hardware não estiver disponível ou habilitado, o emulador funcionará muito lentamente. Você pode melhorar significativamente o desempenho do emulador habilitando a aceleração de hardware e usando imagens de dispositivos virtuais apropriadas para a arquitetura do seu processador. Para mais informações, veja Configurar aceleração de hardware para o Android Emulator em developer.android.com.
O emulador fornece recursos de rede versáteis que podem ser usados para diferentes finalidades, incluindo a conexão a um emulador em execução em um Mac a partir de uma máquina virtual (VM) do Windows. Para obter mais informações, veja Conectar-se a um emulador Android em um Mac de dentro de uma máquina virtual Windows.
No macOS, o emulador Android usa o Hypervisor.Framework integrado. Para obter mais informações, veja Hipervisor em developer.apple.com.
Acelere emuladores Android no Windows
As seguintes tecnologias de virtualização estão disponíveis para acelerar o emulador Android no Windows:
- A plataforma de hipervisor do Windows (WHPX). O Hyper-V é um recurso de virtualização do Windows que possibilita a execução de sistemas de computador virtualizados em um computador host físico.
- O driver do hipervisor do Android Emulator (AEHD).
Observação
O Intel Hardware Accelerated Execution Manager (HAXM) foi descontinuado do emulador 33.x.x.x e foi substituído pelo AEHD nos processadores Intel. Para obter informações sobre como usar o HAXM no emulador 32.x.x.x e inferior, veja Configurar aceleração de VM usando Intel HAXM no Windows em developer.android.com.
Para obter a melhor experiência no Windows, é recomendável usar WHPX para acelerar o emulador Android. Se o WHPX não estiver disponível no seu computador, o AEHD poderá ser usado. O emulador Android usa automaticamente a aceleração de hardware se os seguintes critérios forem atendidos:
- A aceleração de hardware está disponível e habilitada em seu computador de desenvolvimento.
- O emulador está executando uma imagem do sistema criada para um dispositivo virtual baseado em x86-64 ou x86.
Importante
Um emulador acelerado de máquina virtual (VM) pode ser executado dentro de outra VM, incluindo o Computador de Desenvolvimento da Microsoft, desde que a virtualização aninhada esteja habilitada na VM.
Para obter informações sobre lançamento e depuração com o Android Emulator, confira Depurando no Android Emulator.
Acelere com o Hyper-V
Antes de habilitar o Hyper-V, leia a seção a seguir para verificar se seu computador tem suporte para ele.
Verifique o suporte para Hyper-V
O Hyper-V é executado na Plataforma de Hipervisor do Windows. Para usar o Android Emulator com o Hyper-V, o computador precisa atender aos seguintes critérios para dar suporte à Plataforma de Hipervisor do Windows:
O hardware do computador deve atender aos seguintes requisitos:
- Processadores Intel com suporte para tecnologia de virtualização (VT-x), tabelas de páginas estendidas (EPT) e recursos de convidado irrestrito (UG). O VT-x deve estar habilitado no BIOS do seu computador.
- Processadores AMD: Processador AMD Ryzen recomendado. A virtualização ou SVM deve estar habilitada no BIOS do seu computador.
Seu computador deve estar executando as versões Enterprise, Pro ou Education do Windows 11 ou Windows 10 versão 1909 ou posterior.
Para verificar se o hardware e o software do computador são compatíveis com Hyper-V, abra um prompt de comando e digite o seguinte comando:
systeminfo
Se todos os requisitos listados do Hyper-V tiverem um valor de Sim, o computador poderá dar suporte a Hyper-V. Por exemplo:
Se o resultado do Hyper-V indicar que um hipervisor está em execução, o Hyper-V já está habilitado.
Importante
Se o Windows estiver sendo executado dentro de uma máquina virtual, a virtualização aninhada deverá ser habilitada no hipervisor host.
Habilite a aceleração do Hyper-V no Windows
Se o computador atender aos critérios acima, use as seguintes etapas para acelerar o Android Emulator com o Hyper-V:
Insira recursos do windows na caixa de pesquisa do Windows e selecione Ativar ou desativar recursos do Windows nos resultados da pesquisa. Na caixa de diálogo Recursos do Windows, habilite Hyper-V e Plataforma de Hipervisor do Windows:
Depois de fazer essas alterações, reinicie o computador.
Importante
Na atualização de outubro de 2018 do Windows 10 (RS5) e posteriores, será necessário habilitar somente o Hyper-V, já que ele usará o WHPX (Plataforma de Hipervisor do Windows) automaticamente.
Certifique-se de que o dispositivo virtual que você * criou no Gerenciador de Dispositivos Android seja uma imagem de sistema baseada em x86-64 ou x86. Se você usar uma imagem de sistema baseada em Arm, o dispositivo virtual não será acelerado e funcionará lentamente.
Depois que o Hyper-V estiver habilitado, você poderá executar seu emulador Android acelerado.
Acelere com AEHD
Se o seu computador não suporta Hyper-V, você deve usar AEHD para acelerar o emulador Android. Antes de instalar e usar AEHD, leia a seção a seguir para verificar se o seu computador oferece suporte a AEHD.
Verifique o suporte para AEHD
Seu computador deve atender aos seguintes critérios para oferecer suporte a AEHD:
- Um processador Intel ou AMD com extensão de virtualização, que deve estar habilitado em seu BIOS.
- Windows 11 ou Windows 10 de 64 bits.
- O Hyper-V deve estar desligado.
Observação
Vários recursos do Windows habilitam o Hyper-V implicitamente. Para obter mais informações, veja Verifique novamente ao desabilitar o Hyper-V em developer.android.com.
Habilite a aceleração AEHD no Windows
Se o seu computador atender aos critérios acima, siga as etapas a seguir para acelerar o emulador Android com AEHD:
No Visual Studio, selecione o item de menu Ferramentas > Android > SDK do Android Manager....
Na janela SDKs e ferramentas do Android, selecione a guia Ferramentas.
Na guia Ferramentas, expanda Extras, marque a caixa de seleção do item Android Emulator Hypervisor Driver (instalador) e selecione o botão Aplicar alterações:
Observação
Alternativamente, o AEHD pode ser baixado e instalado no GitHub. Após descompactar o pacote do driver, execute
silent_install.bat
em uma linha de comando com privilégios de administrador.Certifique-se de que o dispositivo virtual que você * criou no Gerenciador de Dispositivos Android seja uma imagem de sistema baseada em x86-64 ou x86. Se você usar uma imagem de sistema baseada em Arm, o dispositivo virtual não será acelerado e funcionará lentamente.
AEHD 2.1 e superior
Após a instalação, confirme se o driver está funcionando corretamente usando o seguinte comando:
sc query aehd
Se o driver estiver funcionando corretamente, a mensagem de status incluirá as seguintes informações:
SERVICE_NAME: aehd
...
STATE : 4 RUNNING
...
A seguinte mensagem de erro significa que a extensão de virtualização não está habilitada no BIOS ou que o Hyper-V não está desabilitado:
SERVICE_NAME: aehd
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
Depois que o AEHD estiver instalado e em execução, você poderá executar seu emulador Android acelerado.
AEHD 2.0 e inferior
Após a instalação, confirme se o driver está funcionando corretamente usando o seguinte comando:
sc query gvm
Se o driver estiver funcionando corretamente, a mensagem de status incluirá as seguintes informações:
SERVICE_NAME: gvm
...
STATE : 4 RUNNING
...
A seguinte mensagem de erro significa que a extensão de virtualização não está habilitada no BIOS ou que o Hyper-V não está desabilitado:
SERVICE_NAME: gvm
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
Depois que o AEHD estiver instalado e em execução, você poderá executar seu emulador Android acelerado.
Desinstalar AEHD
Para desinstalar o AEHD, use os seguintes comandos em uma linha de comando com privilégios de administrador:
AEHD 2.1 e superior
sc stop aehd sc delete aehd
AEHD 2.0 e inferior
sc stop gvm sc delete gvm
Importante
Desligue todos os emuladores x86 antes de desinstalar o AEHD para AMD.
Solucionar problemas
Para obter ajuda para solucionar problemas de aceleração de hardware, confira o guia de solução de problemas do Android Emulator.