2009-12-28 11 views
59

Estoy usando el emulador de Android para ejecutar mis programas. Pero es realmente lento. Toma aproximadamente 90 segundos para iniciar y mostrar la pantalla de inicio. ¿Puedo modificarlo para poder reducir este tiempo considerablemente? Gracias ¿Puedo modificar mi emulador de Android para que sea rápido?

+0

desactivar las instantáneas: http://stackoverflow.com/questions/1554099/slow-android-emulator – Jacksonkr

Respuesta

35

que estaba teniendo un problema similar (thread here). Sin embargo, la mía estaba tomando 10-15 minutos. 90 segundos es veloz teniendo en cuenta una gran cantidad de hilos en los grupos de discusión Android. El emulador es lento por la naturaleza y el único La recomendación que leí fue mantener el emulador abierto en lugar de cerrarlo y volver a ejecutarlo. Sin embargo, como mencioné en mi hilo, si tiene un dispositivo físico con Android, puede ejecutarlo en eso. Es lo que estoy haciendo en este momento. y fue un consejo de primera. No hay mucho tiempo de espera. Si no tiene un dispositivo físico, entonces solo puedo sugerir que no cierre el emulador entre cambios de código, ya que el sistema reconocerá el cambio.

+3

Sí exactamente. Deje que el emulador ejecute y vuelva a ejecutar el código después de la edición. Es como intercambiable en caliente. Gracias – Bohemian

+1

No miré el enlace, pero para mi sistema estoy mirando momentos que se parecen más a: primer arranque: 90 segundos, inicio posterior: arranque de 15-20 segundos. No tengo un hardware ultrarrápido (computadora portátil, 2ghz core2-duo, 4gig ram), Ubuntu ... ¿es posible que algo más lo esté ralentizando? –

+1

Dejarlo funcionando es muy útil. Personalmente, cambié al uso del teléfono como la única herramienta de depuración. Simplemente conecte el cable, configúrelo y se ejecuta inmediatamente, sin necesidad de esperar, además admite cambios de orientación ... Saludos, Ari – BeMeCollective

31

use esas 3 opciones.

emulator --cpu-delay 0 --no-boot-anim --cache ./cache --avd avd_name

los dos primeros son obvios. el tercero hará que la memoria del emulador sea persistente. puede apuntarlo a cualquier archivo que no se destruya por arranque (como sucede con/tmp), es como un dispositivo de hibernación siempre encendido.

+0

¿No es la CPU 0 el valor predeterminado? – Pacerier

+0

¿Dónde guardamos esto? ¿En qué ubicación de archivo? – Thompson

+0

@Thompson si quiere decir dónde estará el archivo de caché, en cualquier lugar. '. /' significa "en el lugar donde estoy cuando ejecuto este comando". pero puede reemplazarlo con cualquier archivo (que se creará si no existe) como '--cache/home/thompson/androidcache' – gcb

2

Escala el emulador abajo hizo que mi emulador de carga más rápido ...

emulator -cpu-delay 0 -no-boot-anim -cache ./cache -scale 0.8 -avd avd_name 
+0

en realidad obtuve peores resultados con la escala. Nada notable sin medición, pero fue peor. – gcb

7
  1. El -no-boot-anim parámetro es buena.
  2. No apague el emulador, solo reinicie su aplicación.
  3. Para obtener más aceleraciones, pruebe la nueva función de instantánea, que se describe here.
2

en realidad estas son todas las respuestas correctas, pero ¿ha pensado en cambiar la memoria RAM de la predeterminada 96mb a algo así como 512? funciona para mí :)

2

Si tienes el dispositivo móvil contigo, es mucho más rápido (y más confiable) compilarlo a través de USB al dispositivo. La compilación e instalación en su teléfono demora alrededor de 5 segundos; nunca más uso el emulador, solo se desacelera.

No solo es lento, sino que además de los widgets estáticos (animación) tendrá dificultades para ejecutarse en el emulador y notará un retraso.

+1

El dispositivo real es realmente el único camino a seguir. Es solo calles más rápido. –

+0

No es posible tener un dispositivo para cada combinación de tamaño de pantalla y versión del sistema operativo. Incluso si lo fuera, la gente estaría preguntando cómo mantener 12 teléfonos en la mesa :) ... el principal problema con el emulador es que solo usa una CPU, incluso en un 8core i7. Pero sigue siendo la única manera de automatizar las pruebas nocturnas en varios dispositivos (y dado que solo usa una CPU, puedes ejecutar 8 trabajos :) – gcb

0

Intente utilizar una resolución más pequeña para su emulador como, por ejemplo, HVGA. El emulador se vuelve más lento cuanto más píxeles necesita para renderizar, ya que está utilizando la representación de software.

Además, si tiene suficiente memoria en su computadora, agregue al menos 1 GB de memoria a su emulador. Este es el valor "Tamaño de ram del dispositivo" durante la creación del AVD.

Configure también el indicador "Habilitado" para instantáneas. Esto salvará el estado del emulador y lo dejará comenzar mucho más rápido.

1

Mientras desarrollaba mi juego, Elastic World, sufría del mismo problema. Después de esperar minutos para que el emulador se iniciara, el juego se estaba ejecutando a 20 FPS como máximo. Incluso en dispositivos Android de gama baja podría obtener fácilmente 60 FPS.

Así que me mudé a una máquina VMWare Android, siguiendo las instrucciones de este sitio: http://www.android-x86.org/documents/installhowto/

El mismo bucle juego ahora funciona a 250 FPS. (no se puede jugar a esta velocidad y tengo el juego limitado a un máximo de 60 FPS, pero anulando esta limitación da 250 FPS)

0

Simplemente active la casilla de verificación "Instantánea" en su Administrador de AVD. Salvará el estado de tu AVD cuando lo cierres. Entonces, una vez que ejecute el emulador nuevamente, ese estado guardado será cargado. Por lo tanto, el tiempo de arranque de su AVD se reducirá considerablemente.

0
  1. En primer lugar me siga esta emulación introduction
  2. de ejecución con el comando: emulator -cpu-delay 0 -no-boot-anim -cache ./cache -avd <adv-name> -gpu on (siga link y link)

resultados está dirigido ~ 2-3 veces más rápido

2

recomiendo que uses Genymotion . Es un emulador muy rápido (menos de 10 segundos para ejecutar en mi caso)

Tiene aplicaciones de Google instaladas que también incluyen la aplicación Google Play, que ofrece la posibilidad de descargar cualquier aplicación. Esta es una buena característica para probar aplicaciones con Maps Api.

2

Necesita instalar Intel HAXM

  • abrir que SDK e instalar

enter image description here

  • Crear un nuevo AVD

enter image description here

  • Ahora, cuando ejecutarlo usted debe conseguir este

enter image description here

si no, entonces usted tendrá que instalar Accelerated Execution Manager

Ver este Running the new Intel emulator for Android de cómo se puede hacer esto

enter image description here

ver cuánto más rápido hacer llegar Video

+0

Seguí los pasos que mencionaste y puedo iniciar mi emulador usando el dispositivo virtual intel x86_64 en 60 segundos ... pero no veo ningún "HAX funciona y el emulador funciona rápido en el modo virt" ... tengo Windows 7 de 64 bits ... He instalado HAXM 1.1.1. La virtualización también es compatible con mi PC. – Lucky

Cuestiones relacionadas