¿Cómo puedo hacer que mi emulador se cargue más rápido?

10

Acabo de instalar eclipse junto con las herramientas para desarrollar aplicaciones de Android esta noche; así que soy nuevo para los dos. De todos modos, mi emulador tarda unos 5 minutos o más en cargarse cada vez, y generalmente presenta errores. Y siempre es realmente grande, tan alto como la pantalla de mi computadora portátil y aproximadamente la mitad del ancho. ¿Alguna ayuda?

James Litewski
fuente
1
¿No debería estar esto en SO como una pregunta de desarrollo?
newuser
2
Dado que la pregunta es sobre el emulador, está en la cerca y se inclina hacia el tema.
Daniel
@Daniel: Esta es definitivamente una pregunta del desarrollador, y no pertenece aquí, pero en StackOverflow.com
Jonas
66
@Jonas Solo digo esto porque he visto otras preguntas de emulador antes con argumentos similares: la pregunta se puede responder de la misma manera para un desarrollador y un usuario avanzado. Ninguna parte de su pregunta pide ayuda con la programación o el código Java. Ahora, según el comentario de OP en mi respuesta, es bastante obvio que es un desarrollador, pero un usuario que no es un desarrollador podría hacer esta misma pregunta para probar Android antes de comprar un dispositivo. Este enfoque para las preguntas del emulador se decidió antes de encontrar este sitio.
Daniel
En realidad, podría argumentar que este es solo un problema de software / hardware de PC y pertenece a SuperUser ...
GAThrawn

Respuestas:

9

Si está haciendo desarrollo en Eclipse, no necesita apagar el emulador. Si el botón de depuración / ejecución en Eclipse está configurado correctamente, Eclipse cerrará la instancia actual de su programa dentro del emulador, instalará su nuevo programa en el emulador e iniciará el programa en el emulador actualmente en ejecución, todo sin reiniciar el emulador

Sí, el arranque del emulador todavía toma 5 minutos, pero no es tan malo ya que solo arranca el emulador una vez al día (y arrancar Eclipse al comienzo del día toma aproximadamente la misma cantidad de tiempo de todos modos).

Lie Ryan
fuente
Gracias, ni siquiera lo pensé; Pero tiene sentido.
James Litewski
Soy otro novato en Android Dev y Eclipse ... cuando dices "Si el botón de depuración / ejecución en Eclipse está configurado correctamente ...", ¿qué quieres decir? Sospecho que el mío no está configurado 'correctamente' porque reinicia el emulador cada vez. Gracias
POR EL
Encontré la respuesta a mi pregunta de seguimiento aquí: stackoverflow.com/questions/506777/… Dejando rastro para cualquier otra persona que pueda preguntarse lo mismo.
PARA
8

Lie Ryan señala que una vez que inicias el emulador, no necesitas cerrarlo cuando termines de probar una compilación. Déjelo abierto y cada vez que ejecute o depure su aplicación, se volverá a cargar y ejecutar automáticamente.

Si tiene problemas con el tamaño del emulador, puede modificar la configuración y hacer que muestre el tamaño real del dispositivo que está tratando de emular. Esto se puede hacer abriendo el "SDK de Android y el Administrador de AVD", seleccione el AVD que desea administrar y haga clic en "Iniciar". Aparecerá el cuadro de diálogo a la derecha (en la captura de pantalla a continuación). Marque "Escalar pantalla a tamaño real" y luego debe modificar el Screen Sizecampo y el campo "Monitorear dpi". El "Tamaño de pantalla" será el tamaño de la pantalla para el dispositivo que está emulando y "Monitor dpi" se relacionará con el dpi de su monitor. Puede que tenga que jugar un poco con esto porque me tomó un par de intentos hacerlo bien.

SDK y AVD Manager

Espero que esto ayude

Daniel
fuente
Entonces, supongo que todo lo que tengo que hacer es abrirlo desde allí, y luego hacer clic para ejecutar el programa una vez que se carga.
James Litewski
@ James Depende de cómo tenga su proyecto "Ejecutar configuración" / "Configuración de depuración". Si están configurados en manual, se le pedirá que seleccione un dispositivo o emulador actualmente en ejecución o que inicie uno nuevo. Si no es manual, deberá configurar el emulador que está ejecutando como predeterminado para que instale / ejecute el programa allí.
Daniel
¿Por qué el voto negativo?
Daniel
5

Creo que no hay nada que hacer para acelerar el emulador, es realmente lento.

Será mejor que use un dispositivo real para las pruebas, si es posible.

Nicolas Raoul
fuente
Bueno, un dispositivo real no está cerca de mi presupuesto en este momento ... ¿Al menos sabes cómo hacer que el emu sea más pequeño? Entonces, ¿es como un tamaño de dispositivo normal?
James Litewski
Inicie el comando "android" (en sdk / tools). En el cuadro de diálogo "Android SDK and AVD Manager", hay un botón "Nuevo ..." para crear una nueva máquina. Aparece un cuadro de diálogo llamado "Crear nuevo dispositivo virtual Android". En su sección "Máscara" puede especificar la resolución que desea.
Nicolas Raoul
3

Si está utilizando una máquina multinúcleo, puede intentar forzar al emulador a usar más núcleos. El emulador de Android usa un solo núcleo por defecto, y en algunos procesadores puede ser realmente lento. Sin embargo, esto disminuye la estabilidad del emulador.

Para hacer esto, inicie el emulador y presione Ctrl+Shift+Escpara abrir el Administrador de tareas. Vaya a la Processespestaña y haga clic derecho en el emulator.exeproceso, seleccione Set Affinityy seleccione núcleos adicionales. Tenga en cuenta que debe hacer esto cada vez que inicie el emulador.

Hice esto en mi vieja máquina de desarrollo (Q9650, Win2008, 8GB DDR2 800MHz RAM) y mejoró un poco la velocidad, pero se bloqueó una vez al día en promedio.

onik
fuente
3

Además de las otras excelentes respuestas aquí, esta es una respuesta obvia.

De todos modos, pensé que lo agregaría a la lista aquí. Si aumenta las especificaciones de hardware en la computadora de desarrollo en la que está ejecutando esto (más específicamente RAM o velocidad del eje del disco duro) verá un aumento en la velocidad a la que el Emulador se inicia y ejecuta.

Mi computadora de desarrollo tenía 2 GB de DDR2667 y cuando pasé a 4 GB de DDR800 tuve un aumento notable en la velocidad de inicio y operaciones del emulador.

Mat Nadrofsky
fuente
Caja de desarrollo?
James Litewski
Caja de desarrollo = Una computadora comprada o construida para ser utilizada específicamente para el desarrollo de software. Eso no significa que no se pueda usar para otra cosa, pero el desarrollo es su propósito.
Daniel
Ups Sí, dejé que geek-speek se metiera en eso. Editado!
Mat Nadrofsky
3

Hay una función incorporada en el emulador, llamada Instantánea. Instantánea, básicamente guarda una imagen del emulador (en su estado actual) cuando la cierra. Luego, la próxima vez, puede comenzar desde el mismo lugar. El emulador se iniciará casi de inmediato, ya que no necesita pasar por el proceso de arranque. Con Snapshot, puedo iniciar mi emulador de manera consistente en menos de 5 segundos (en lugar de 60 a 90 segundos para iniciarlo sin).

Básicamente, cuando crea el AVD (cree su imagen de emulador), hay una sección titulada: "Instantánea". Asegúrese de que esté marcado ("habilitado"). También puede regresar y editar un AVD para habilitarlo si se lo perdió la primera vez.

La próxima vez que inicie el emulador, se habilitarán las opciones de "Instantánea". Seleccione "Iniciar desde instantánea" si desea comenzar desde una imagen guardada, y seleccione "Guardar en instantánea" para guardar el estado en que se encuentra su emulador cuando la cierra.

Moco
fuente