Compartir vía


Solución de problemas de Android Emulator

En este artículo se describen los mensajes de advertencia y los problemas más comunes que se producen al configurar y ejecutar Android Emulator. Además, describe soluciones para resolver estos errores y varias sugerencias de solución de problemas para ayudarle a diagnosticar problemas del emulador. Para obtener más información, consulte Solución de problemas conocidos con Android Emulator en developer.android.com.

Problemas de implementación en Windows

El emulador puede mostrar algunos mensajes de error al implementar la aplicación. Aquí se explican los errores y las soluciones más comunes.

Errores de implementación

Si se ve un error al instalar el APK en el emulador o al ejecutar Android Debug Bridge (adb), compruebe que Android SDK se pueda conectar con el emulador. Para comprobar la conectividad del emulador, siga estos pasos:

  1. Inicie el emulador desde android Administrador de dispositivos (seleccione el dispositivo virtual y seleccione Iniciar).

  2. Abra un símbolo del sistema y vaya a la carpeta donde está instalado adb. Si android SDK está instalado en su ubicación predeterminada, adb se encuentra en C:\Archivos de programa (x86)\Android\android-sdk\platform-tools\adb.exe; si no es así, modifique esta ruta de acceso para la ubicación del SDK de Android en el equipo.

  3. Escriba el siguiente comando:

    adb devices
    
  4. Si el emulador es accesible desde Android SDK, el emulador debe aparecer en la lista de dispositivos conectados. Por ejemplo:

    List of devices attached
    emulator-5554   device
    
  5. Si el emulador no aparece en esta lista, inicie Android SDK Manager, aplique todas las actualizaciones y vuelva a intentar iniciar el emulador.

Error de acceso MMIO

Si se muestra el mensaje Se ha producido un error de acceso MMIO, reinicie el emulador.

Ausencia de Google Play Services

Si el dispositivo Android emulado no tiene Google Play Services o Google Play Store instalado, probablemente haya creado un dispositivo virtual que excluya estos paquetes. Al crear un dispositivo virtual, asegúrese de seleccionar una o ambas opciones:

  • API de Google: incluye Google Play Services en el dispositivo virtual.
  • Google Play Store: incluye Google Play Store en el dispositivo virtual.

Por ejemplo, este dispositivo virtual incluirá Google Play Services y Google Play Store:

Android Device Manager with Google Play Services and Play Store enabled for .NET MAUI.

Nota:

Las imágenes de Google Play Store solo están disponibles para algunos tipos de dispositivos base como Pixel, Pixel 2, Nexus 5 y Nexus 5X.

Problemas de rendimiento

Los problemas de rendimiento se suelen producir por uno de los problemas siguientes:

  • El emulador se ejecuta sin aceleración de hardware.
  • Dispositivo virtual que se ejecuta en el emulador mediante una imagen basada en Arm.

En las secciones siguientes se tratan estos escenarios con más detalle.

La aceleración de hardware no está habilitada

Al iniciar un dispositivo virtual y no tiene habilitada la aceleración de hardware, el Administrador de dispositivos muestra un cuadro de diálogo de error similar a la siguiente imagen:

Android device manager warning about Hyper-V not enabled on .NET MAUI.

Para corregir este error, siga los pasos de solución de problemas de la sección Problemas de aceleración de hardware .

Problemas de aceleración de hardware

Al usar la aceleración de hardware, puede encontrarse con problemas de configuración o conflictos con otro software en el equipo. El primer paso para solucionar problemas es comprobar que la aceleración de hardware está habilitada. Puede usar el SDK de Android para comprobar esta configuración. Abra un símbolo del sistema y escriba el siguiente comando:

"C:\Program Files (x86)\Android\android-sdk\emulator\emulator-check.exe" accel

Este comando supone que Android SDK está instalado en la ubicación predeterminada de C:\Archivos de programa (x86)\Android\android-sdk. Si android SDK está instalado en otra parte, modifique el comando anterior a la ubicación correcta.

Sugerencia

Asegúrese de que Android Emulator está actualizado. En Visual Studio, presione Herramientas>Android>SDK Manager. Seleccione la pestaña Herramientas y compruebe si la entrada android Emulator tiene una actualización disponible.

Configuración del BIOS incorrecta

Si el BIOS no se ha configurado correctamente para admitir la aceleración de hardware, se mostrará un mensaje similar al ejemplo siguiente al ejecutar el comando emulator-check.exe accel :

VT feature disabled in BIOS/UEFI

Para corregir este problema, reinicie en el BIOS del equipo y habilite las opciones siguientes:

  • Tecnología de virtualización (puede tener otra etiqueta según el fabricante de la placa base).
  • Prevención de ejecución de datos forzada mediante hardware.

Si todavía se producen problemas debido a problemas relacionados con Hyper-V, consulte la sección siguiente.

Problemas de Hyper-V

En algunos casos, habilitar tanto Hyper-V como Windows Hypervisor Platform en el cuadro de diálogo Activar o desactivar las características de Windows puede que no habilite Hyper-V correctamente. Para comprobar que Hyper-V está habilitado, siga estos pasos:

  1. Escriba PowerShell en el cuadro de búsqueda de Windows.

  2. Haga clic con el botón derecho en Windows PowerShell en los resultados de la búsqueda y seleccione Ejecutar como administrador.

  3. En la consola de PowerShell, escriba el comando siguiente:

    Get-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V-All -Online
    

    Si Hyper-V no está habilitado, se mostrará un mensaje similar al ejemplo siguiente para indicar que el estado de Hyper-V está deshabilitado:

    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 :
    
  4. En la consola de PowerShell, escriba el comando siguiente:

    Get-WindowsOptionalFeature -FeatureName HypervisorPlatform -Online
    

    Si el hipervisor no está habilitado, se mostrará un mensaje similar al ejemplo siguiente para indicar que el estado de HypervisorPlatform está deshabilitado:

    FeatureName      : HypervisorPlatform
    DisplayName      : Windows Hypervisor Platform
    Description      : Enables virtualization software to run on the Windows hypervisor
    RestartRequired  : Possible
    State            : Disabled
    CustomProperties :
    

Si Hyper-V o HypervisorPlatform no están habilitados, use los siguientes comandos de PowerShell para habilitarlos:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform -All

Cuando se completen estos comandos, reinicie.

Para obtener más información sobre cómo habilitar Hyper-V (incluidas las técnicas para habilitar Hyper-V mediante la herramienta de Administración y mantenimiento de imágenes de implementación), vea Instalar Hyper-V.

Más sugerencias para la solución de problemas

Las sugerencias siguientes suelen ser útiles para diagnosticar problemas de Android Emulator.

Inicio de Android Emulator desde la línea de comandos

Si el emulador aún no se está ejecutando, puede iniciarlo desde la línea de comandos (en lugar de desde Visual Studio) para ver su salida. Normalmente, las imágenes avD del emulador de Android se almacenan en la siguiente ubicación: %userprofile%\.android\avd.

Puede iniciar el emulador con una imagen de AVD desde esta ubicación si pasa el nombre de la carpeta del AVD. Por ejemplo, este comando inicia un AVD denominado 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

Este comando supone que Android SDK está instalado en la ubicación predeterminada de C:\Archivos de programa (x86)\Android\android-sdk. Si android SDK está instalado en otra parte, modifique el comando anterior a la ubicación correcta.

Visualización de registros de Device Manager

A menudo, se pueden ver los registros de Device Manager para diagnosticar problemas del emulador. Estos registros se escriben en la siguiente ubicación: %userprofile%\AppData\Local\Xamarin\Logs\16.0.

Puede ver cada archivo DeviceManager.log mediante un editor de texto.