Compartir vía


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 , el equipo es compatible con Hyper-V. Por ejemplo:

Ejemplo de salida de systeminfo al comprobar la compatibilidad de Hyper-V con .NET MAUI.

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:

  1. 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:

    Habilitación de Hyper-V y plataforma de hipervisor de Windows para .NET MAUI.

    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.

  2. 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:

  1. En Visual Studio, selecciona los elementos de menú Herramientas > Android > Android SDK Manager....

  2. En la ventana Herramientas y Android SDK, selecciona la pestaña Herramientas .

  3. 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:

    Instalación de AEHD a través del Administrador de Android SDK en Visual Studio.

    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.

  4. 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.