Cómo habilitar la aceleración de hardware con emuladores de Android (Hyper-V y AEHD)
Con Visual Studio, puedes probar y depurar fácilmente la aplicación .NET MAUI para Android en emuladores para situaciones en las que un dispositivo Android no está disponible. Pero si la aceleración de hardware no está disponible o habilitada, el emulador se ejecutará muy lentamente. Para mejorar significativamente el rendimiento del emulador, habilite la aceleración de hardware y use imágenes de dispositivo virtual adecuadas para la arquitectura del procesador. Para obtener más información, consulte Configuración de la aceleración de hardware para Android Emulator en developer.android.com.
El emulador proporciona funcionalidades de red versátiles que se pueden usar para diferentes propósitos, incluida la conexión a un emulador que se ejecuta en un equipo Mac desde dentro de una máquina virtual (VM) Windows. Para obtener más información, consulte Conectar a Android Emulator en un Mac desde dentro de una máquina virtual de Windows.
En macOS, Android Emulator usa Hypervisor.Framework integrado. Para obtener más información, consulte Hipervisor en developer.apple.com.
Acelerar emuladores de Android Emulator en Windows
Las siguientes tecnologías de virtualización están disponibles para acelerar Android Emulator en Windows:
- La plataforma de hipervisor de Windows (WHPX). Hyper-V es una característica de virtualización de Windows que permite ejecutar sistemas de equipos virtualizados en un equipo host físico.
- El controlador de hipervisor de Android Emulator (AEHD).
Nota:
Intel Hardware Accelerated Execution Manager (HAXM) está en desuso del emulador 33.x.x.x y se ha reemplazado por AEHD en procesadores Intel. Para obtener información sobre el uso de HAXM en Emulator 32.x.x.x y versiones inferiores, consulta Cómo configurar la aceleración de hardware para Android Emulator en developer.android.com.
Para obtener la mejor experiencia en Windows, se recomienda usar WHPX para acelerar el emulador de Android. Si WHPX no está disponible en el equipo, puede utilizarse HAXM. Android Emulator usará automáticamente la aceleración de hardware si se cumplen los criterios siguientes:
- La aceleración de hardware está disponible y habilitada en el equipo de desarrollo.
- El emulador ejecuta una imagen del sistema creada para un dispositivo virtual basado en x86-64 o x86
Importante
Un emulador acelerado de máquina virtual (VM) se puede ejecutar dentro de otra máquina virtual, incluido Microsoft Dev Box, siempre que la virtualización anidada esté habilitada en la máquina virtual.
Para obtener información sobre cómo iniciar y depurar con Android Emulator, vea Depuración en Android Emulator.
Acelerar con Hyper-V
Antes de habilitar Hyper-V, lea la sección siguiente para comprobar que su equipo es compatible con Hyper-V.
Comprobación de la compatibilidad con Hyper-V
Hyper-V se ejecuta en Windows Hypervisor Platform. Para usar Android Emulator con Hyper-V, el equipo debe cumplir los siguientes criterios para admitir Windows Hypervisor Platform:
El hardware del equipo debe cumplir los siguientes requisitos:
- Procesadores Intel compatibles con la tecnología de virtualización (VT-x), tablas de páginas extendidas (EPT) y características de invitado sin restricciones (UG). VT-x debe estar habilitado en el BIOS del equipo.
- Procesadores AMD: Se recomienda el procesador AMD Ryzen. La virtualización o la SVM deben estar habilitadas en el BIOS del equipo.
El equipo debe ejecutar las versiones Enterprise, Pro o Education de Windows 11 o Windows 10 versión 1909 o posterior.
Para comprobar que el hardware y el software del equipo es compatible con Hyper-V, abra un símbolo del sistema y escriba el comando siguiente:
systeminfo
Si todos los requisitos de Hyper-V enumerados tienen un valor de Sí, el equipo es compatible con Hyper-V. Por ejemplo:
Si el resultado de Hyper-V indica que un hipervisor se está ejecutando actualmente, Hyper-V ya está habilitado.
Importante
Si Windows se ejecuta dentro de una máquina virtual, la virtualización anidada debe estar habilitada en el hipervisor de host.
Habilitación de aceleración de Hyper-V en Windows
Si el equipo cumple los criterios mencionados anteriormente, siga estos pasos para la aceleración de Android Emulator con Hyper-V:
Escriba características de windows en el cuadro de búsqueda de Windows y seleccione Activar o desactivar las características de Windows en los resultados de búsqueda. En el cuadro de diálogo Características de Windows, habilite Hyper-V y Windows Hypervisor Platform:
Después de realizar estos cambios, reinicie el equipo.
Importante
En la actualización de octubre de 2018 de Windows 10 (RS5) y versiones posteriores, solo tiene que habilitar Hyper-V, ya que Windows Hypervisor Platform (WHPX) se usará automáticamente.
Asegúrate de que el dispositivo virtual que has creado en Android Device Manager es una imagen del sistema basada en x86-64 o x86. Si usas una imagen del sistema basada en ARM, el dispositivo virtual no se acelerará y se ejecutará con lentitud.
Una vez habilitado Hyper-V, podrás ejecutar Android emulator acelerado.
Aceleración con AEHD
Debes usar AEHD para la aceleración de Android Emulator si tu equipo no es compatible con Hyper-V. Antes de poder instalar y usar AEHD, lee la sección siguiente para comprobar que el equipo admite AEHD.
Comprobación de la compatibilidad con AEHD
El equipo debe cumplir los siguientes criterios para admitir AEHD:
- Un procesador Intel o AMD con extensión de virtualización, que debe estar habilitado en el BIOS.
- Windows 11 o Windows 10 de 64 bits.
- Se debe desactivar Hyper-V.
Nota:
Varias características de Windows habilitan Hyper-V implícitamente. Para obtener más información, consulta Double-check when disabling Hyper-V en developer.android.com.
Habilitación de la aceleración de AEHD en Windows
Si el equipo cumple los criterios mencionados anteriormente, sigue estos pasos para la aceleración de Android Emulator con AEHD:
En Visual Studio, selecciona los elementos de menú Herramientas > Android > Android SDK Manager....
En la ventana Herramientas y Android SDK, selecciona la pestaña Herramientas .
En la pestaña Herramientas, expande Extras, marca la casilla del elemento Android Emulator Hypervisor Driver (installer) y, a continuación, selecciona el botón Aplicar cambios:
Nota:
Como alternativa, AEHD se puede descargar e instalar desde GitHub. Después de desempaquetar el paquete de controladores, ejecuta
silent_install.bat
en una línea de comandos con privilegios de administrador.Asegúrate de que el dispositivo virtual que has creado en Android Device Manager es una imagen del sistema basada en x86-64 o x86. Si usas una imagen del sistema basada en ARM, el dispositivo virtual no se acelerará y se ejecutará con lentitud.
AEHD 2.1 y versiones posteriores
Después de la instalación, confirma que el controlador funciona correctamente con el siguiente comando:
sc query aehd
Si el controlador funciona correctamente, el mensaje de estado incluirá la siguiente información:
SERVICE_NAME: aehd
...
STATE : 4 RUNNING
...
El siguiente mensaje de error significa que la extensión de virtualización no está habilitada en el BIOS o que Hyper-V no está deshabilitada:
SERVICE_NAME: aehd
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
Después de instalar y ejecutar AEHD, podrás ejecutar el Android Emulator acelerado.
AEHD 2.0 y versiones inferiores
Después de la instalación, confirma que el controlador funciona correctamente con el siguiente comando:
sc query gvm
Si el controlador funciona correctamente, el mensaje de estado incluirá la siguiente información:
SERVICE_NAME: gvm
...
STATE : 4 RUNNING
...
El siguiente mensaje de error significa que la extensión de virtualización no está habilitada en el BIOS o que Hyper-V no está deshabilitada:
SERVICE_NAME: gvm
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
Después de instalar y ejecutar AEHD, podrás ejecutar el Android Emulator acelerado.
Desinstalar AEHD
Para desinstalar AEHD, use los siguientes comandos en una línea de comandos con privilegios de administrador:
AEHD 2.1 y versiones posteriores
sc stop aehd sc delete aehd
AEHD 2.0 y versiones inferiores
sc stop gvm sc delete gvm
Importante
Apague los emuladores x86 antes de desinstalar AEHD para AMD.
Solución de problemas
Para obtener ayuda con la solución de problemas de aceleración de hardware, consulte la guía de solución de problemas de Android Emulator.