Acelerar el emulador de Android


Todos los desarrolladores de Android se han topado con su emulador y su lentitud. Para corregir esto Intel ha desarrollado una tecnología denominada HAXM (Hardware Accelerated Execution Manager), que consiste en unas imágenes del emulador que lo aceleran considerablemente, tanto que tarda segundos en cargar la primera vez el emulador y no minutos como si no las usáramos. Además, están perfectamente integradas con el entorno de desarrollo de Android. Lo primero es asegurarnos que nuestro ordenador soportará esta tecnología. Para ello tenemos que cumplir que nuestro procesador sea Intel y que disponga de Tecnología de Virtualización activada (veremos más adelante como hacer esto). Empecemos dirigiéndonos al “Android SDK Manager”

SDK Android emulador Intel HAWX - www.jarroba.com

Para descargar los archivos necesarios. Uno imprescindible es ir a la carpeta “Extras” y descargar “Intel x86 Emulator Accelerator (HAXM)”. Los otros que tenemos que descargar son las imágenes del sistema operativo preparadas por Intel, para ello vamos a las carpetas de Android de la versión que queramos descargar (en la captura siguiente vemos que estamos descargándola de “Android 4.2.2 (API 19)”) y descargamos las que se llaman “Intel x86 Atom System Image”.

Descargar Android emulador Intel HAWX - www.jarroba.com

Después de la descarga vamos a la carpeta donde tengamos instalado el SDK de Android. Nos dirigimos a la ruta “IDE/sdk/extras/intel/Hardware_Accelerated_Execution_Manager”. Encontraremos el ejecutable “IntellHaxm.exe” que ejecutaremos.

Ejecutable Android emulador Intel HAWX - www.jarroba.com

Naturalmente se nos abrirá un instalador. La primera pantalla nos dice esencialmente que solo va a funcionar si tenemos un procesador Intel y con tecnología de virtualización. Pulsamos en “Next”

Instalador 1 Android emulador Intel HAWX - www.jarroba.com

La segunda ventana nos preguntará que cuánta memoria RAM de nuestro ordenador vamos a ceder al emulador. Aquí hay que tener en cuenta que cuando se lance el emulador la va a consumir (A más RAM que le permitamos teóricamente irá más deprisa el emulador y más lento nuestro ordenador en general), con lo que se recomienda el valor por defecto que es un cuarto de la memoria del ordenador (para evitar problemas recomendamos que se pongan un mínimo de 2GB, pues hemos probado con menos y no siempre arranca). Seguimos en “Next”.

Instalador 2 Android emulador Intel HAWX

Casi hemos terminado cuando en la siguiente ventana pulsemos “Install”.

Instalador 3 Android emulador Intel HAWX

Supuesto error que puede aparecer: No asustarse si nos aparece la siguiente ventana, ya que no es ningún error sino un aviso: This computer meets the requirements for HAXM, but Intel Virtualization Technology (VT-x) is not turned on. HAXM can be installed, but will not work until VT-x is enabled. Please refer to the Intel HAXM documentation for more information

Instalador 4 Android emulador Intel HAWX

Simplemente nos indica que nuestro ordenador cumple con todos los requisitos pero que no tenemos activada la Tecnología de Virtualización. Para esto tendremos que ir a la Bios y activarla (lo explicamos un poco más adelante).

Terminamos la instalación pulsando “Finish”.

 Instalador 5 Android emulador Intel HAWX

Nos lo haya pedido o no tenemos que reiniciar nuestro ordenador ahora.

Activar la Tecnología de Virtualización:  Solo es necesario si nos apareció el anterior mensaje de supuesto error, o si queremos asegurarnos de que esté activada. Nota: el sistema operativo de las Bios varía de una placa base a otra pero son parecidos, por lo que puede no parecerse a las imágenes aquí expuestas. Debido a la sensibilidad de esta parte del ordenador, recomendamos no tocar nada más o no hacerlo si no se tiene la total seguridad de que se está tocando ya que se podría estropear algo. Desde luego no nos hacemos responsables de lo que cada uno toque en su ordenador y lo que pueda suceder; pese a que el proceso es muy sencillo y carente de riesgos si se hace bien. Para ello a la que se inicia el ordenador, en la pantalla de la placa base pulsamos o la tecla “Suprimir”, la de “Escape”, o la que nos indique esta pantalla para entrar en la configuración de la Bios. Aquí vamos al apartado llamado “BIOS Features” y activamos (ponemos el valor a “Enable”) el que se llama “Intel Virtualizacion Technology”.

Activar Tecnologia de Virtualizacion Bios 1 Android emulador Intel HAWX

Pongo otra imagen de ejemplo de otra Bios diferente, en el que hay que ir “Advanced” luego a “CPU Configuration” y ahí activar el que pone “Intel(R) Virtualization Tech”

Bios Virtualizacion 2 - Jarroba

Posteriormente guardamos y salimos, pulsando F10  y aceptando el mensaje

Cuando se inicie el ordenador volvemos a Eclipse. Vamos al “Android Virtual Device Manager” para configurar un emulador.

AVD Android emulador Intel HAWX - www.jarroba.com

Aquí creamos un nuevo emulador pulsando “New…”

AVD 2 Android emulador Intel HAWX - www.jarroba.com

Entre todos los parámetros de configuración los verdaderamente interesantes ahora son el “Target” para seleccionar una versión del sistema operativo en la que nos hayamos descargado la imagen de Intel (No sirven los que empiezan Google APIs (Google Inc.), sino los otros). Y sobre todo el apartado de “CPU/ABI” donde seleccionaremos para que nos procese todo “Intel Atom (x86)”. Para saber más sobre este apartado recomiendo que leas en un momento este artículo.

AVD 3 Android emulador Intel HAWX - www.jarroba.com

Ahora vamos a configurar lanzar el emulador que hemos configurado. Para ello vamos a Eclipse y pulsamos en la flecha negra que está justo a la derecha de a la flecha verde llamada “Run Stack”, ahí seleccionamos “Run Configurations…”

Arrancar Android emulador Intel HAWX - www.jarroba.com

En la ventana que se nos abre vamos a “Target”, elegimos nuestro emulador que hemos configurado, y lo ejecutamos con “Run”.

Arrancar 2 Android emulador Intel HAWX - www.jarroba.com

El emulador se nos abrirá en unos segundos y se nos mostrará en la “Console” el siguiente mensaje diciendo que todo a ido bien: “HAX is working and emulator runs in fast virt mode”

Arrancar 3 Android emulador Intel HAWX - www.jarroba.com

Error si tenemos Windows 8.1: Puede que la consola no nos muestre el anterior mensaje sino este otro que es un mensaje de error, que significa que no está funcionando el emulador: emulator: Failed to open the HAX device! HAX is not working and emulator runs in emulation mode emulator: Open HAX device failed Para corregir esto tenemos que descargar el parche para Windows 8.1 de http://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager e instalarlo. Prueba de nuevo y ya verás como el error se habrá solucionado.

Ya podremos disfrutar de la velocidad punta de nuestro emulador Android 🙂

Referencias:

http://developer.android.com/tools/devices/emulator.html#accel-vm http://software.intel.com/en-us/articles/speeding-up-the-android-emulator-on-intel-architecture

Comparte esta entrada en:
Safe Creative #1401310112503
Acelerar el emulador de Android por "www.jarroba.com" esta bajo una licencia Creative Commons
Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License.
Creado a partir de la obra en www.jarroba.com

54 comentarios en “Acelerar el emulador de Android”

  1. Hola, a mi en mi sdk me sale directamente que el intel x86 Emmulator Acelerattor noes compatible con windows, tengo el intel y mi windows es el 8

    1. No todos los procesadores Intel son compatibles. También tienes que asegurarte que no tienes activado el Hiper-v de Windows (puedes ponerlo o quitarlo desde “Característias de Windows”).

  2. Hola , tengo AMD , aun que ya habilite SVM en mi bios , me sale ese mensaje de que mi cpu no soporta VT-x o SVM, que puedo hacer?

    1. Con AMD no hay tecnología de virtualización compatible de momento 🙁

      De cualquier manera, no quita de poder trabajar con el emulador, un poco más lento, pero tampoco es insufrible.

  3. Hola, tengo un AMD FX de 8 núcleos, 32 gigas de ram, discos duros de estado sólido, la tarjeta madre es una MSI 970x Gaming, la tarjeta de vídeo

    es una Nvidia 750x de 2 gigas de VRam, pero no logro que se me quite ese bendito error del HAXM, ¿cómo hago para desactivarlo y que utilice el CPU

    físico de mi equipo?

    1. El error si te deja ejecutar el emulador puedes obviarlo. De cualquier manera mira a ver si en el AVD tienes descargado el “Intel emulator accelerator” y lo tienes instalado en tu equipo como indica el artículo.

  4. Hola, muchas gracias por los tutoriales que has subido
    Solo que tengo un problema con el acelerador, tengo un AMD E1-2500 y he habilitado todo lo necesario en la BIOS, como mi rocesador no es compatible con el HAXM de intel, he tratado de emular sin el acelerador pero cada que lo intento me sale el siguiente error:
    Cannot launch AVD in emulator.
    Output:
    emulator: ERROR: x86 emulation currently requires hardware acceleration!
    Please ensure Intel HAXM is properly installed and usable.
    CPU acceleration status: HAX kernel module is not installed!
    Como puedo configurar el android studio para que desprecie el acelerador y emule con el procesador de mi ordenador?
    De antemano muchas gracias

    1. Buenas Alan. Los procesadores AMD no son compatibles. Estás intentando emular una imagen del sistema operativo que no es compatible, prueba a descargar otra imagen desde el AVD 😉

    2. La única solución que encontré teniendo una AMD FX 6300 fue: en el emulador al momento de elegir la versión de android, tienes que buscar la que tenga como ABI : armeabi-v7a. 

  5. Buenas tardes, excelente tutorial, muy bien explicado. Pero tengo un problema tengo un computador HP con intel core i3 de 4GB con windows 7, y he seguido todos los pasos pero me sigue mostrando el error de la activación de la tecnología de virtualización aún cuando ya la he activado muchas veces en la BIOS. El problema es que soy nuevo en esto, y simplemente android studio no me deja correr las aplicaciones, siempre que le doy "Run" me aparece el error x86 emulation currently… y no me muestra el supuesto emulador tradicional que uds mencionan en los comentarios. Me gustaría saber cómo hacer para que por lo menos me deje trabajar con ese lento emulador, o se puede instalar otro o cómo se hace? porque no puedo hacer nada. Agradezco la atención. Saludos a todos. 

     

    1. Con un buen ordenador (normalito vale, 8 Gb de Ram y procesador de un par de núcleos a 2,8 Hz) ya se puede programar en condiciones con el emulador normal, sin HAWX (HAWX acelera bastante, se nota; pero sin éste se puede desarrollar bien en el emulador).

      De cualquier manera comprueba que tengas instalado correctamente HAWX, porque justo el error que comentas suele ocurrir por o no estar instalado o por haberse instalado mal.

      Aunque en Eclipse, explicamos como utilizar el emulador normal en nuestro libro grauito en http://jarroba.com/libro-android-100-gratis/

      También suguiero que consultes la página oficial, donde se extiende mucho más técnicamente el uso del emulador http://developer.android.com/intl/es/tools/devices/emulator.html

    1. No hay ningún problema si no se utiliza el HAWX. Si tienes un buen ordenador (tampoco hace falta tener un ordenador de la Nasa, uno normal sirve) vas a poder emular con soltura, o sino siempre queda desarrollar sobre un dispositivo (aunque te recomiendo menos, pues del uso intensivo su vida útil se reduce).

  6. Hola, he seguido y aplicado cuidadozamente todos los pasos para que funcione pero no lo logro, ni con el aporte de Ivissu, verifique la referencia de mi procesor con la pagina de intel y es compatible con virtualización, la cual está habilitada en la bios, tienes alguna otra sugerencia?  

    1. Prueba a actualizar tanto el SDK de Android como el propio HAXM, así como probar que nada lo esté bloqueando como podría ser un Antivirus aunque no debería de darte problemas.

  7. Hola que tal, antes que nada gracias por el tutorial, muy bien explicado y practico.

    Tengo un procesador AMD FX 6100 6 nucleos , soy bastante ignorante al respecto, me gustaria saber si hay alguna forma de hacerlo funcionar, ya que me tira error cuando lo quiero instalar.  En el caso de que no funcione Haxm, hay alguna otra manera de acelerar ? anda fatal Andy :,P.

    _Muchas gracias!!

     

  8. Hola Ramon, 

    Conoces algo de RAPT Pygame, si es el caso, te agradeceria una mano. Intento construir mi aplicacion tengo el telefono conectado con el modo de Depuracion de USB activado, pero no me hace absolutamente nada. 

    1. Hola Rene. 

      No, no he trabajado con RAPT Pygame.

      Sobre los fallos de conexión USB comprueba que estén bien instalados los drivers del teléfono y que hayas aceptado el certificado del móvil para depurar.

  9. Buenas:

    A la hora de ejecutar el ejecutable “IntellHaxm.exe” me sale este mesaje "this computer does not support Intel Virtualization Technology

    (VT-x). HAXM cannot be intalled".

    1. Significa que el ordenador no soporta la tecnología de virtualización. Mira la bios por si acaso, pero huele a que el procesador es AMD.

  10. hola… 

    ami me sale el "supuesto error" y entro a la BIOS, habilito la tecnologia de virtualizacion y vulvo a intentar a instalar y nada… 

    1. Tiene que ser compatible tanto tu placa como el procesador. Si aún activado te sigue fallando posiblemente no sea compatible con haxm

  11. Hola buenos dias.. escribo porque tengo un problema al instalar android studio, cuando ya se me esta terminando de instalar me lanza este error. Failed to install Intel HAXM. For details, please check the installation log: C:….. varias carpetas y de final nsx7426.tem/haxm_silent_run.log… Tendras algun conocieminto que puedo hacer para arreglarlo?? 

  12. Hola

    Disculpa en la BIOS no encuentro la opcion de Intel(R) Virtualization Tech y no encuentro una opcion parecida si pudieras ayudarme

    1. No todas los procesadores de Intel permiten la tecnología de Virtualización. Por otro lado, cada bios de cada placa base es diferente.

  13. Hola!

    Gracias por vuestro tutoriales, son muy buenos y ayudan mucho. Estoy intentando acelerar el emulador. Ya descargue los archivos de intel del sdk, instale y cambie la opcion de la bios.
    Pero tengo un problema en el AVD Manager: Creo que es por la nueva version de android studio, pero las capturas no son como las que me salen a mi, no tengo la opcion de “target” ni tampoco la de “cpu/abi” solo me sale “System image” y no me sale en el listado nada de intel.
    Lo que tengo es un listado como el que sale en esta imagen
    https://wiki.aalto.fi/download/attachments/103026045/Virtual%20Device%20Configuration_015.png

    Muchas gracias por la ayuda

    1. En Android Studio funciona parecido pero han cambiado muchas cosas. Para seleccionar un procesador Inter basta con escoger uno que ponga x86 o x64.

  14. Hola,
    esto es para ordenadores con Intel, pero el mío es AMD Athlon, ¿hay algo que sirva en este caso?.

    gracias

  15. Es un excelente tutorial, ahora quizas algunos no cuenten con una buena makina que aprobeche el eclipse June o Luna que es la ultima version, otra cosa es emular el dispositivo android es un superdolor de cabeza los invito tengo una makina sencilla, es de AMD pero es el homologo a una Intel P4 3.0 HT, con 2 Gb de Ram, trbajo con la ultima version de Eclipse algo lentico pero se puede, ahora sip he pasado casi 30 minutos lebantando el dispositivo Android que emula y mi makina no tiene teg virtualizacion sip una gran kk, ,solucion>
    dispositivo fisico conectado por usb cada vez ke corremos la aplicacion se ejecuta al instante la aplicacion en nuestro telefono android tampoco tengo un super telefono trbajo con un samsun GT-S5360 un tarekito pero todo me ha dado resultado a la perfeccion estoy hablando de respuesta en 5 seg, si necesitan ayuda escribanme renev321@gmail.com, saludos y bienvenidos a la comunidad

    1. Hola Luís,

      cuando lo has intentado unas cuantas veces, esperado más de cinco minutos y no carga es porque el emulador no tiene recursos suficientes. Prueba a ponerle más memoria RAM desde el editor de emuladores del ADT. Sino, solo te quedará hacer las pruebas con una versión del sistema operativo más antiguo.

  16. Hola, yo tambien tuve problemas con el BIOS, aunque activava el VT-x me seguia apareciendo el mismo mensaje de error al instalar HAXM.

    La forma como lo solucione fue entrando al simbolo del sistema (ejecutar CMD como Administrador) y pegar el siguiente comando: bcdedit /set nx AlwaysOn

    Despues reinicie la PC y ya tenia instalado el HAXM correctamente 😀

    1. Gran por la aportación Ivissu!!!! Espero que les sirva a todos los desarrolladores con le problema 😀

      Sólo hacer notar, y es mi deber avisar, que al ejecutar el comando “bcdedit /set nx AlwaysOn” se activan todas las defensas de DEP de Windows (DEP es un sistema de protección de Windows contra ataques a partes de la memoria no permitidas). Todas las protecciones implican también a nivel de Hadware (en procesadores compatibles). Que si bien no tendrían que dar ningún problema, podría provocar que el equipo o algunos programas no funcionaran adecuadamente si no están preparados para todas las funciones de DEP (más información en http://msdn.microsoft.com/en-us/library/windows/hardware/ff542202(v=vs.85).aspx).

  17. Hola exelente tutorial, lo unico que en mi bios no encuentro la opcion del ‘Intel(R) Virtualization Tech’ mi procesador es un i5 4200m lo estoy usando con 4gb de ram.

    Alguna idea?

    Gracias.

    1. Hola Muricio,

      Puede tener un nombre parecido. De todas maneras, a parte de cumplir con que el procesador sea compatible, la placa base también ha de poder ejecutar la tecnología de virtualización (si en la bios no sale puede que la placa base no sea compatible).

      1. Gracias por responder, te cuento que tengo una lenove e440 y busque en la pagina de lenovo para ver que placa tiene pero no encontre nada, si sabes de algo te agradeceria que me lo contaras.

        Exelente pagina!

        1. Por el modelo del ordenador no te puedo dar indicaciones precisas. La manera más sencilla es mirando directamente en la bios. Normalmente está en la pestaña “configuration”. Sino tampoco te preocupes, este emulador es más rápido pero no es determinante para poder desarrollar o no, siempre puedes utilizar o el emulador tradicional o un dispositivo físico.

  18. Gracias por el tutorial amigo, hice todos los pasos y me funciono correctamente.

    La velocidad aumenta, aunque relativamente yo diría que un 20% en primera instancia, aunque con forme sigues programando y refrescas la virtualización se hace más fluido.

    Como comentario para otras personas que les sea útil, a más de un amigo no le funciono aunque tenían procesador intel, en mi caso fue un poco de suerte contar un core i7, tengo entendido que serian 14 procesadores, 7 reales y 7 virtuales, eso me ayudo en gran medida.

    Saludos!

  19. Hola, tngo w7 y me sale el error: “HAX is not working and emulator runs in emulation mode” ¿Hay solución o me rindo con mi ordenador? mi pc tiene 2.86 de ram y 1.87 GHz

    1. Hola Marta,

      con Windows 7 no deberías de tener problemas. Tu ordenador está un poco en el límite, pero podemos probar. Ejecuta de nuevo el asistente y prueba a cambiar la memoria RAM del asistente cuando lo pida, y vuelve a probar. Si no te funciona, puedes usar el emulador de toda la vida, no va tan deprisa, pero tampoco es insufrible (he trabajado mucho tiempo con él y todavía sigo aquí 😛 )

    1. Hola Elisa,

      Necesito algún dato más sobre el error. ¿La pantalla blanca te sale en el emulador, en el dispositivo físico, o en ambos? ¿El log de Android te devuelve algún error? ¿Y la consola? ¿O la Vista de Eclipse de error? ¿Has comprobado que esté bien asignados los diseños? ¿Está desactivado el “Use Host GPU” de la configuración del emulador (desactívalo si lo está)?

  20. Hola!,

    Antes que nada, muchas gracias por el tutorial.

    Tengo un problema: cuando despliego las opciones de “Run”, y escojo “Run Configurations”, en la siguiente ventana no veo el amulador que acabo de configurar.

    Mi ordenador me ha permitido reservar sólo 1.9GB y no dos como recomendáis para el HAXM. ¿Puede ser ése el motivo?. Alguna otra idea?. Gracias otra vez!

    Carla

    1. Buenas Carla,

      si no aparece en “Run Configuration” en el apartado de “Target” lo más seguro es que la versión de la aplicación que estés desarrollando tenga puesta una versión más antigua que la configurada en el emulador (El ADT realiza un filtro y hace que solo aparezcan las versiones compatibles). La recomendación de los 2GB es para, en algunas ocasiones, evitar algunos inconvenientes; pero si te funciona bien no hace falta tocar nada.

      1. He estado ausente unos días, muchas gracias por vuestra rapidísima contestación!!. Vamos a ver en que termina mi aventura android. Saludos!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies

ACEPTAR
Aviso de cookies