Como posso fazer meu emulador carregar mais rápido?


10

Acabei de instalar o eclipse junto com as ferramentas para o desenvolvimento de aplicativos para Android hoje à noite; então eu sou novo em ambos. De qualquer forma, meu emulador leva cerca de 5 minutos ou mais para carregar a cada vez e geralmente gera erros. E é sempre muito grande, do tamanho da tela do meu laptop e da metade da largura. Alguma ajuda?


11
Isso não deveria estar no SO como uma questão de desenvolvimento?
newuser

2
Como a pergunta é sobre o emulador, ele está em cima do muro, inclinando-se para estar no tópico.
Daniel

@ Daniel: Esta é definitivamente uma questão desenvolvedor, e não pertence aqui, mas em StackOverflow.com
Jonas

6
@ Jonas Só estou dizendo isso porque já vi outras perguntas de emulador antes com argumentos semelhantes: a pergunta pode ser respondida da mesma maneira para um desenvolvedor e um usuário avançado. Nenhuma parte de sua pergunta pede ajuda com programação ou código java. Agora, com base no comentário do OP na minha resposta, é bastante óbvio que ele é um desenvolvedor, mas um usuário não-desenvolvedor pode fazer a mesma pergunta para testar o Android antes de comprar um dispositivo. Essa abordagem para perguntas do emulador foi decidida antes de eu encontrar este site.
Daniel

Você pode realmente fazer completamente um bom argumento de que este é apenas um problema de software PC / hardware e pertence em SuperUser ...
GAThrawn

Respostas:


9

Se você está desenvolvendo no Eclipse, não precisa desligar o emulador. Se o botão debug / run no Eclipse estiver configurado corretamente, o Eclipse fechará a instância atual do seu programa dentro do emulador, instalará seu novo programa no emulador e iniciará o programa no emulador atualmente em execução - tudo sem reiniciar o emulador.

Sim, a inicialização do emulador ainda leva 5 minutos, mas não é tão ruim, pois você inicializa o emulador apenas uma vez por dia (e inicializar o Eclipse no início do dia leva aproximadamente a mesma quantidade de tempo).


Obrigado, eu nem pensei; mas faz sentido.
James Litewski

Sou outro novato no Android Dev e Eclipse. Quando você diz "Se o botão de depuração / execução no Eclipse está configurado corretamente ...", o que você quer dizer? Suspeito que o meu não esteja configurado corretamente, pois reinicia o emulador sempre. Obrigado
POR

Encontrei a resposta para minha pergunta de acompanhamento aqui: stackoverflow.com/questions/506777/… Deixando rastros para qualquer outra pessoa que possa se perguntar o mesmo.
PARA

8

Lie Ryan enfatiza que, uma vez iniciado o emulador, você não precisa fechá-lo quando terminar de testar uma compilação. Deixe-o aberto e sempre que você executar ou depurar seu aplicativo, ele será automaticamente recarregado e iniciado.

Se você estiver tendo problemas com o tamanho do emulador, poderá modificar as configurações e exibir o tamanho real do dispositivo que você está tentando emular. Isso pode ser feito abrindo o "Android SDK and AVD Manager", selecione o AVD que você deseja gerenciar e clique em "Iniciar". Isso exibirá a caixa de diálogo à direita (na captura de tela abaixo). Verifique a "Dimensionar a exibição para o tamanho real" e, em seguida, você precisará modificar o Screen Sizecampo e o campo "Monitor dpi". O "Tamanho da tela" será o tamanho da tela do dispositivo que você está emulando e o "Monitor dpi" estará relacionado ao dpi do monitor. Você pode ter que brincar um pouco com isso, porque levei algumas tentativas para acertar.

Gerenciador de SDK e AVD

Espero que isto ajude


Então, acho que tudo o que tenho a fazer é abri-lo a partir daí e clicar para executar o programa, uma vez carregado.
James Litewski

@ James Depende de como você tem o seu projeto "Run Configuration" / "Debug Configuration". Se eles estiverem configurados para manual, você será solicitado a selecionar um dispositivo ou emulador em execução no momento ou iniciar um novo. Se não for manual, será necessário definir o emulador que você está executando como padrão, para que ele instale / execute o programa lá.
Daniel

Por que o voto negativo?
Daniel

5

Eu acho que não há nada a fazer para acelerar o emulador, é apenas muito lento.

É melhor usar um dispositivo real para testes, se possível.


Bem, um dispositivo real não está nem perto do meu orçamento no momento. Você pelo menos sabe como diminuir o emu? Então é como um tamanho normal de dispositivos?
precisa saber é o seguinte

Inicie o comando "android" (em sdk / tools). Na caixa de diálogo "Android SDK and AVD Manager", há um botão "Novo ..." para criar uma nova máquina. Uma caixa de diálogo chamada "Criar novo dispositivo virtual Android" é exibida. Na seção "Skin", você pode especificar a resolução que deseja.
Nicolas Raoul

3

Se você estiver usando uma máquina multicore, tente forçar o emulador a usar mais núcleos. O emulador do Android usa um único núcleo por padrão e, em alguns processadores, pode ser muito lento. No entanto, isso diminui a estabilidade do emulador.

Para fazer isso, inicie o emulador e pressione Ctrl+Shift+Escpara abrir o Gerenciador de tarefas. Vá para a Processesguia e clique com o botão direito do mouse no emulator.exeprocesso, selecione Set Affinitye selecione núcleos adicionais. Observe que você deve fazer isso toda vez que iniciar o emulador.

Fiz isso na minha antiga máquina de desenvolvimento (Q9650, Win2008, 8GB DDR2 800MHz RAM) e melhorou um pouco a velocidade, mas travou uma vez por dia, em média.


3

Além das outras ótimas respostas aqui, essa é uma resposta óbvia.

De qualquer forma, pensei em adicioná-lo à lista aqui. Se você aumentar as especificações de hardware no computador em desenvolvimento ao executá-lo (mais especificamente na velocidade do eixo da RAM ou do disco rígido), verá um aumento na velocidade na qual o Emulador é inicializado e executado.

Meu computador de desenvolvimento tinha 2 GB de DDR2667 e, quando fui para 4 GB de DDR800, tive um aumento notável na velocidade de inicialização e operações do emulador.


Caixa de desenvolvimento?
James Litewski

Caixa de Desenvolvimento = Um computador comprado ou construído para ser usado especificamente para o desenvolvimento de software. Isso não significa que não possa ser usado para mais nada, mas o desenvolvimento é seu objetivo.
Daniel

Opa Sim, eu deixei o nerd entrar nessa. Editado!
precisa saber é o seguinte

3

Há um recurso incorporado ao emulador chamado Snapshot. Instantâneo, basicamente salva uma imagem do emulador (no estado atual) quando você a fecha. Da próxima vez, você pode iniciá-lo do mesmo lugar. O emulador será iniciado quase imediatamente, pois não precisa passar pelo processo de inicialização. Usando o Snapshot, posso iniciar meu emulador de forma consistente em menos de 5 segundos (em vez de 60 a 90 segundos para iniciá-lo sem).

Basicamente, quando você cria o AVD (crie sua imagem de emulador) - há uma seção intitulada: "Instantâneo". Verifique se isso está marcado ("ativado"). Você também pode voltar e editar um AVD para habilitá-lo, se você o perdeu pela primeira vez.

Da próxima vez que você iniciar o emulador, as opções "Instantâneo" serão ativadas. Selecione "Iniciar a partir da captura instantânea" se desejar iniciar a partir de uma imagem salva e selecione "Salvar na captura instantânea" para salvar qualquer estado em que o emulador esteja quando você o fechar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.