Cómo solucionar problemas conocidos con Android Emulator

En esta página, se muestran los errores conocidos, las soluciones alternativas y las sugerencias para resolver problemas relacionados con Android Emulator. Si experimentas un problema que no se indica aquí o si no puedes usar correctamente una de las soluciones alternativas que se muestran, informa un error.

Cómo verificar si hay espacio suficiente en el disco

Para evitar fallas y bloqueos debido a la falta de espacio libre en el disco, el emulador comprueba si hay suficiente espacio libre en el inicio y no se inicia si no hay al menos 2 GB libres. En caso de que no se inicie el emulador, verifica si tienes suficiente espacio libre en el disco.

Software antivirus

Dado que muchos paquetes de software antivirus y de seguridad funcionan mediante la supervisión de operaciones de lectura y escritura, el uso del software puede disminuir el rendimiento de las herramientas similares a Android Emulator.

Muchos paquetes antivirus permiten agregar apps específicas a una lista de aplicaciones de confianza, lo que permite que funcionen correctamente sin degradar el rendimiento. Si experimentas dificultades para guardar o cargar instantáneas de AVD, puedes mejorar el rendimiento colocando la aplicación de Android Emulator como una de confianza en el software antivirus.

El impacto en el rendimiento difiere de un paquete de software antivirus a otro. Si tienes otro software antivirus instalado que el que se incluye con el sistema operativo, puedes ejecutar pruebas simples para determinar cuál de esos tiene el mayor efecto sobre el rendimiento de la carga y las operaciones de guardado del emulador.

Es posible que algunos software antivirus sean incompatibles con Android Emulator.

Si estás usando software Avast y tienes problemas para ejecutar Android Emulator, inhabilita las opciones Use nested virtualization when available y Enable Hardware assisted virtualization en la configuración del solucionador de problemas de Avast. Además, después de inhabilitar la virtualización de hardware de Avast, asegúrate de que HAXM esté configurado correctamente de nuevo a través de una reinstalación completa de la versión de HAXM más reciente del SDK Manager.

En Windows, a veces, el AVD se bloquea con HAXM y el problema se puede resolver desinstalando McAfee por completo.

No se puede iniciar el AVD

Es posible que un AVD no se inicie si existe un informe de fallas para un emulador más reciente (problema #281725854). Este problema ocurre solo para los usuarios que realicen la actualización de la versión canary 33.x a la versión 32.1.13, hayan experimentado una falla la última vez que ejecutaron la versión 33.x y no hayan reiniciado su AVD desde entonces, de modo que el directorio %TEMP% o /tmp siga activo. Si experimentas este problema, intenta borrar el directorio %TEMP% (/tmp en Linux o macOS).

HAXM en versiones no compatibles de macOS

Si estás usando Android Emulator en versiones anteriores no compatibles de macOS, como la 10.9, es posible que también debas usar una versión anterior de HAXM (6.1.2).

Android Emulator se ejecuta lentamente después de una actualización

Varios factores externos pueden causar que Android Emulator comience a ejecutarse de forma lenta después de una actualización. Para empezar con la solución de problemas, te recomendamos que sigas estos pasos:

  • Si tienes una GPU Intel (y, en particular, la Intel HD 4000), asegúrate de haber descargado e instalado la versión más reciente del controlador de gráficos Intel.
  • Si tu computadora tiene una GPU Intel HD 4000 y una GPU discreta, inhabilita la primera en el Administrador de dispositivos para asegurarte de estar usando la GPU discreta.
  • Ejecuta el emulador con los modos -gpu angle, -gpu swiftshader o -gpu guest. Si quieres obtener más información para configurar las opciones de aceleración de gráficos en la línea de comandos, consulta la sección Cómo configurar la aceleración de hardware.
  • Asegúrate de que el router no esté usando direcciones IPv6 si no tienes una conexión de ese tipo.

Si Android Emulator sigue ejecutándose lentamente, informa un error e incluye los detalles necesarios de Android Emulator para que podamos investigar el problema.

Windows: Memoria RAM libre y cargo de confirmación

Cuando se inicia el emulador, este debe inicializar la RAM del sistema operativo invitado de Android. En Windows, el emulador solicita que ese sistema operativo represente el tamaño completo de la memoria de invitado a la hora de inicio, aunque durante la operación real, la memoria se puede paginar a pedido. El emulador solicita la cantidad total de memoria de invitado al momento de inicio porque Windows debe garantizar que haya suficiente RAM física y archivos de paginación disponibles para contener todo el conjunto de tareas potenciales. Esta solicitud se prepara para el peor de los casos posibles, en el que se ocupa rápidamente toda la memoria de invitado, sin ninguna oportunidad de descartar ni liberar memoria.

En ocasiones, cuando el emulador le solicita a Windows que especifique el tamaño completo de memoria de invitado, la solicitud excede el límite de confirmación actual, que es el total de la memoria RAM física disponible y del archivo de paginación. En ese caso, Windows no puede garantizar que el conjunto de tareas, en el peor de los casos posibles, se ajuste a la RAM física o al archivo de paginación, y, como consecuencia, no se inicia el emulador.

En casos típicos, la cantidad de espacio en el disco duro asignado para el archivo de paginación más la RAM física es más que suficiente para la mayoría de los casos de uso del emulador. Sin embargo, si experimentas fallas al iniciar el emulador debido a que excede el límite de confirmación, te recomendamos que examines el cargo de confirmación actual, que se puede ver en la pestaña Rendimiento del Administrador de tareas de Windows (para abrirlo, presiona Ctrl + Mayúsculas + Esc).

Puedes disminuir la probabilidad de que se supere el límite de confirmación de varias maneras:

  • Libera RAM física antes de iniciar el emulador cerrando aplicaciones y archivos no utilizados.
  • Inhabilita la administración de la memoria de terceros y utilidades de compresión de memoria. Esas utilidades pueden causar un cargo de confirmación excesivo y acercar el sistema al límite de confirmación.
  • Utiliza un tamaño administrado por el sistema para el archivo de paginación de Windows, que puede aumentar de manera más flexible y dinámica el tamaño del archivo de paginación (y, por lo tanto, el límite de confirmación) en respuesta a una mayor demanda del emulador y otras aplicaciones.

    Para obtener más información sobre los cargos de confirmación y los motivos por los que funciona mejor una configuración flexible, consulta este artículo de Microsoft.

La función de varios toques no funciona en la ventana de herramientas

Los gestos de varios toques, incluido el desplazamiento lateral de dos dedos, no funcionan cuando el emulador se ejecuta en una ventana de herramientas. Para habilitarlos, inicia el emulador en una ventana separada.

El emulador degrada la salida de audio de Bluetooth

Si usas auriculares Bluetooth, es posible que notes que la salida de audio se degrada cuando se ejecuta el emulador (error 183139207). Esto sucede porque, cuando se inicia el emulador, se activa el micrófono de los auriculares, lo que provoca que estos cambien el modo dúplex, con calidad reducida.

Para evitar este problema, inhabilita el micrófono en el emulador agregando hw.audioInput=no al archivo config.ini del dispositivo virtual de Android (AVD). Para encontrar el archivo config.ini de un AVD, ve al AVD en el Administrador de dispositivos, haz clic en el menú ampliado y selecciona Show on Disk.

Windows: No se inicia el emulador si hay Unicode en el nombre del AVD

En Windows, cuando el Administrador de dispositivos crea un dispositivo virtual de Android (AVD), se crea el AVD de forma predeterminada en C:\Users\<name>\.android\avd. Sin embargo, si el nombre del AVD (<name>) tiene Unicode, el emulador no puede iniciar el AVD de forma correcta con esta ubicación predeterminada.

Este problema se solucionó en Emulator 31.3.6 y versiones posteriores. Para resolverlo, selecciona Tools > SDK Manager y actualiza el emulador.

Como alternativa, para solucionar este problema, configura la variable de entorno ANDROID_SDK_HOME en un directorio personalizado antes de crear un AVD. Por ejemplo, crea el directorio C:\Android\home y, luego, configura ANDROID_SDK_HOME en este directorio recién creado. Para obtener más información, consulta Variables de entorno.

La ventana del emulador incorporada es demasiado pequeña

En máquinas con resolución más baja, como 1024 x 768, puede ser difícil leer la pantalla del emulador cuando se ejecuta en una ventana de herramientas en Android Studio. Para darle más espacio al emulador, cierra la ventana de herramientas del Administrador de dispositivos si está abierta. También puedes extraer la ventana del emulador de Android Studio. Para ello, en la ventana del emulador, haz clic en Settings > View Mode y selecciona Window en lugar de Dock Pinned.

Error: No se puede encontrar vulkan-1.dll

Si no se inicia el emulador debido al error vulkan-1.dll cannot be found, es probable que debas actualizarlo. Para actualizar el emulador en Android Studio, ve a Tools > SDK Manager e instala la última versión estable de la plataforma de Android.

Como alternativa, si no necesitas ninguna app que use la biblioteca de gráficos Vulkan, desactiva Vulkan iniciando el emulador desde la línea de comandos con la marca -feature -Vulkan.

Sin Internet: No se puede encontrar la dirección DNS del servidor

Si el emulador no puede conectarse a Internet, intenta iniciarlo desde la línea de comandos con la opción -dns-server “2001:4860:4860::8844,2001:4860:4860::8888,8.8.8.8,8.8.4.4”. Este comando proporciona una lista separada por comas de direcciones IP de DNS público de Google. Para obtener más información sobre el DNS público de Google, consulta DNS público de Google para tus dispositivos.

Sin Internet: Problemas con la resolución de DNS

A veces, las direcciones DNS del archivo /etc/resolv.conf no funcionan correctamente. Para solucionar este problema, inicia el emulador desde la línea de comandos con las opciones -dns-server 8.8.8.8 o -dns.server 2001:4860:4860::8888 para conectarte a través de una red solo IPv6.

No se pudo crear una instantánea

No se admite la creación de una instantánea del emulador que incluya la biblioteca de gráficos de Vulkan. Para ejecutar el emulador sin Vulkan, inicia el emulador desde la línea de comandos con la marca -feature -Vulkan. Como alternativa, puedes desinstalar y evitar usar apps con Vulkan (como Chrome en el nivel de API 30 o superiores) si deseas usar instantáneas como parte del flujo de trabajo de desarrollo.

No se puede abrir correctamente la página web

A partir del nivel de API 30, Chrome usa la biblioteca de gráficos de Vulkan como backend de renderización y podría tener problemas de compatibilidad en ciertas máquinas. Si Chrome no se procesa correctamente, intenta iniciar el emulador desde la línea de comandos con la marca -feature -Vulkan.

El hipervisor Intel HAXM no es totalmente compatible con las CPUs previas a Intel iX

Si tu computadora tiene una CPU previa a Intel iX y el hipervisor Intel HAXM, es probable que tengas problemas de rendimiento con el emulador. Esto se debe a que el emulador no puede usar la aceleración de hardware para mejorar el rendimiento en estas máquinas más antiguas. Si estás utilizando una CPU previa a Intel iX, es posible que tengas una mejor experiencia de prueba si utilizas un dispositivo físico en lugar del emulador.

Los hipervisores no pueden emular determinadas funciones de CPU que requieren los sistemas Android x86

Por lo general, los hipervisores no pueden emular ciertas funciones de CPU, como las extensiones SIMD de transmisión (SSE), requeridas por los sistemas Android x86.

No se pueden iniciar dispositivos virtuales de Android en ChromeOS

En ChromeOS, es posible que no se inicien los dispositivos virtuales de Android (AVD) porque falta la dependencia de libnss3. Para iniciar los AVD correctamente, ejecuta sudo apt install libnss3 para instalar la biblioteca libnss3 de forma manual.

Advertencia del controlador de GPU: Se vuelve a renderizar el software en Intel HD4000

Si recibes una advertencia sobre un controlador de GPU que vuelve a renderizar el software, cambia la configuración de la GPU a hardware. De forma predeterminada, se usa el modo automático que podría elegir la renderización de software. Si eliges hardware, deberías poder forzarlo para que use la renderización de hardware (aún se podría mostrar un mensaje de advertencia).

En el caso de las imágenes que no son de Play Store, puedes hacerlo en el Administrador de dispositivos -> 3 puntos -> Editar. Para las imágenes de Play Store, debes editar manualmente esos 2 archivos de configuración:

~/.android/your_avd_name.avd/config.ini

~/.android/your_avd_name.avd/hardware-qemu.ini

y cambia hw.gpu.mode por host.

Consulta este error para obtener más detalles.

El emulador no se inicia en el Escritorio remoto de Chrome de Windows

Si el emulador no se inicia mientras se usa el Escritorio remoto de Chrome en Windows, la solución alternativa actual recomendada es usar la marca-gpu, como -gpu host o -gpu swiftshader.