El emulador de Android es un poco lento. Para algunos dispositivos, como el Motorola Droid y el Nexus One, la aplicación se ejecuta más rápido en el dispositivo que en el emulador. Este es un problema al probar juegos y efectos visuales.
¿Cómo haces que el emulador funcione lo más rápido posible? He estado jugando con sus parámetros pero aún no he encontrado una configuración que muestre una mejora notable.
Respuestas:
Página web oficial
~ 50% más rápido
Ventanas:
Vaya a la carpeta raíz del SDK de Android y vaya a extras \ intel \ Hardware_Accelerated_Execution_Manager. Ejecute el archivo IntelHaxm.exe para instalar. (en Android Studio puede navegar a: Configuración -> SDK de Android -> Herramientas de SDK -> Acelerador de emulador Intel x86 (instalador HAXM))
Cree AVD con CPU / ABI "Intel atom x86"
Tampoco olvides instalar este
PS durante la creación de AVD agregue memoria de emulación: Hardware / Nuevo / Tamaño de ram del dispositivo / valor de configuración 512 o más
Linux:
PS para Fedora , para Ubuntu
OS-X:
PD: compruebe esta herramienta, muy conveniente incluso prueba
fuente
/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.dmg
después de descargar el paquete desde el administrador de SDK.^(?!.*(nativeGetEnabledTags)).*$
como filtro de texto. He informado de esto como un problema de error . Además, creo que debe apagar correctamente su dispositivo emulador (mantenga presionado el botón de encendido, luego seleccione Apagar ) para evitar errores cuando lo inicie la próxima vez (podría cerrar el emulador ARM, pero con el emulador Intel, solo cerrar parece crear problemas).ACTUALIZACIÓN: Ahora que una imagen Intel x86 está disponible, la mejor respuesta es por entusiasmo anterior.
Como CommonsWare ha señalado correctamente, el emulador es lento porque emula una CPU ARM, que requiere traducción a códigos de operación Intel. Esta virtualización mastica la CPU.
Para acelerar el emulador, debes darle más CPU. Comience con una CPU rápida o actualice si puede.
Luego, dele al emulador más de la CPU que tiene:
Estoy viendo en algún lugar una mejora del 50% con estos dos cambios en su lugar.
Para configurar la afinidad del procesador en Windows 7:
Nota: Cuando cambia la afinidad de esta manera, solo cambia durante la vida útil del proceso. Siguiente inicio, tienes que hacerlo de nuevo.
fuente
Me gustaría sugerir darle un giro a Genymotion . Se ejecuta en VirtualBox de Oracle y legítimamente alcanzará los 60 fps en un sistema moderado.
Aquí hay una captura de pantalla de uno de mis talleres, que se ejecuta en un MacBook Air modelo 2012 de gama baja:
Si no puede leer el texto, es un emulador de Nexus 7 que se ejecuta a 56.6 fps. La ventaja adicional (¡grande!) Es que Google Play y Google Play Services vienen empaquetados con las máquinas virtuales.
(La fuente de la animación demostrada se puede encontrar aquí .)
fuente
Habilite la aceleración de hardware de GPU (además de HAXM de Intel), si está utilizando API 15 v3 o posterior y SDK Tools v17 +. La aceleración de gráficos para el emulador aprovecha el hardware de gráficos de su computadora de desarrollo, específicamente su unidad de procesamiento de gráficos (GPU), para acelerar el dibujo de la pantalla. Esto da un notable aumento en la velocidad.
Para habilitar la aceleración de gráficos habilitada de forma predeterminada en su emulador : al crear el AVD, en la sección Hardware, haga clic en Nuevo, seleccione Emulación de GPU y configure el valor en Sí.
Para habilitar la aceleración solo en tiempo de ejecución : use el indicador -gpu al iniciar el emulador de esta manera:
Fuente: tutorial sobre el uso del emulador de Google .
fuente
Editar Aunque el uso de las imágenes Intel obtiene algunas mejoras de rendimiento, el rendimiento obtenido al usar Genymotion es mucho mayor. Ver la respuesta de Paul Lammertsma .
Respuesta anterior
Con ADT rev 17, el emulador admite la ejecución de imágenes del sistema x86 en modo de virtualización en Windows y Mac OS X. Esto tiene un impacto notable en el rendimiento.
ADT rev 17 notas: http://android-developers.blogspot.jp/2012/03/updated-sdk-tools-and-adt-revision-17.html
Configuración de la aceleración de máquina virtual: http://developer.android.com/guide/developing/devices/emulator.html#accel-vm
fuente
Recientemente cambié de un núcleo 2 @ 2.5 con 3 gb de ram a un i7 @ 1.73 con 8 gb ram (ambos sistemas ejecutaban Ubuntu 10.10) y el emulador funciona al menos dos veces más rápido ahora. Lanzarle más hardware ciertamente ayuda.
fuente
Solo quería decir que después de instalar el acelerador Intel HAXM y usar la imagen Intel Atom, el emulador parece correr 50 veces más rápido. La diferencia es asombrosa, ¡échale un vistazo!
http://www.developer.com/ws/android/development-tools/haxm-speeds-up-the-android-emulator.html
fuente
Me di cuenta de que el emulador por defecto es solo Core 0, donde la mayoría de las aplicaciones de Windows se convertirán en "cualquier" núcleo. Además, si lo coloca en otro núcleo (como el último núcleo), puede hacer que el emulador se vuelva loco. Si puede, intente colocar sus aplicaciones de uso intensivo de CPU en los otros núcleos de CPU para aumentar la velocidad.
En cuanto al hardware, obtenga la CPU más rápida que pueda obtener que funcione para aplicaciones de un solo núcleo. Es posible que más de 2 núcleos no experimenten una gran diferencia en términos de rendimiento del emulador.
Eclipse + el emulador de Android juntos consumen una tonelada de RAM. Recomendaría 3 gigas de RAM al menos porque usé un sistema con 2 gigas de RAM, y se desaceleró porque el sistema se quedó sin RAM y comenzó a usar el archivo de página.
Creo que las mejores CPU para él probablemente tengan un reloj alto (solo use el reloj como medida para CPU en la misma serie por cierto), manejen bien las operaciones que no sean SIMD y tengan un mecanismo de turbo boost. No hay muchos puntos de referencia basados en Java, pero en general busca puntos de referencia de aplicaciones como la compresión y la oficina. No mire los juegos o los medios, ya que los SIMD los afectan enormemente. Si encuentra uno Java, aún mejor.
fuente
En este año, Google I / O (2011), Google demostró un emulador más rápido. El problema no está tanto en el código de byte entre ARM y x86 sino en la representación del software realizada por QEMU. Omiten la representación de QEMU y la envían directamente a un servidor X, creo. Mostraron un juego de autos con muy buen rendimiento y fps.
Me pregunto cuándo estará disponible para los desarrolladores ...
fuente
Google anunció recientemente un nuevo emulador para Android. Es mucho más rápido y mejor que el anterior. Puede encontrar más información al respecto aquí .
fuente
Creo que es porque la máquina virtual clr usa cpu directamente sin traducción de código de operación de código. Puede ser una optimización para la aplicación clr o puede ser Windows Mobile / Windows Phone 7 iniciado en el procesador INTEL. Plataforma de Android basada en Linux y, en teoría, puede iniciar Android en una máquina virtual en un entorno i686. En este caso, las máquinas virtuales como vmware podrían ejecutar algunos códigos de operación directamente. Pero esta opción solo se permitirá si escribe en Java. Porque Java interpreta su código de byte o lo precompila antes de la ejecución. ver: http://www.taranfx.com/how-to-run-google-android-in-virtualbox-vmware-on-netbooks
fuente
Gracias @zest! Trabajado como un encanto. Algunas cosas a tener en cuenta: es necesario aplicar la revisión de Intel para el HAXM para tratar el problema de pánico del kernel: http://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager También, tenga en cuenta , si tiene más de un abi, debe desinstalar uno debido a un error en la última versión de la API de Android (r19): https://code.google.com/p/android/issues/detail?id= 66740 (elimine armeabi-v7a en este caso, ya que desea el x86 abi). Aparte de los 45 minutos que me llevó resolverlos, fue un ejercicio muy gratificante en términos del mayor rendimiento del emulador.
fuente
También puede probar el emulador de Android Visual Studio , que también se puede instalar como un emulador independiente (no necesita Visual Studio). Tenga en cuenta que solo se puede instalar en Windows Pro o sistemas superiores.
fuente
Use Genymotion en lugar de emulador. Genymotion tiene un mejor rendimiento https://www.genymotion.com
fuente
elige un emulador de baja resolución (por ejemplo: Nexus S) si no tienes una buena tarjeta gráfica (como yo)
fuente
He estado usando Intel (86) CPU / ABI. Creé otro emulador usando el ARM (armeabi-v7a) y encontré una gran mejora con la velocidad. Estoy usando la plataforma 4.1.2 API nivel 16
fuente
Espero que esto ayude.
Goto to your BIOS settings. Enable your Virtualization technology in your settings..
Resolvió mi problema ...
fuente
Actualice su Android Studio actual a Android Studio 2.0 Y también actualice las imágenes del sistema.
El emulador de Android Studio 2.0 funciona ~ 3 veces más rápido que el emulador anterior de Android, y con las mejoras de ADB ahora puede enviar aplicaciones y datos 10 veces más rápido al emulador que a un dispositivo físico. Al igual que un dispositivo físico, el emulador oficial de Android también incluye servicios integrados de Google Play, por lo que puede probar más funciones de API. Finalmente, el nuevo emulador tiene nuevas características para administrar llamadas, batería, red, GPS y más.
fuente