Mostrando postagens com marcador emulador. Mostrar todas as postagens
Mostrando postagens com marcador emulador. Mostrar todas as postagens

segunda-feira, 1 de abril de 2013

Ferramentas do SDK Android



As Ferramentas do SDK Android

O SDK do Android é um ambiente composto de vários componentes que juntos possibilita um desenvolvimento mais rápido e eficiente de aplicativos para dispositivos Android.  As partes mais importantes do SDK Android são um conjunto de tecnologias como Java, Eclipse, máquina virtual Dalvik, QEMU e outras plataformas, que juntas formam as partes mais importantes do SDK Android. Abaixo será apresentado algumas dessas ferramentas.


Android Debug Bridge (adb)

É um programa que permite que controle tanto o emulador quanto os dispositivos e executa um Shell no ambiente do emulador ou no dispositivo que se está conectado. Permitindo assim que se tenha um controle muito grande sobre o ambiente em que se está desenvolvendo. Ele permite fazer tarefas desde as mais simples até se obter acesso root ao ambiente do emulador ou do dispositivo.


Dalvik Debug Monitor Server (DDMS)

O Dalvik Debug monitor Server é quem monitora todo o trafego entre uma Java Virtual Machine (JVM) e qualquer depurador Java. O DDMS fornece vários recursos para ajudar no desenvolvimento de uma aplicação Android e pode ser acessada por uma interface de usuário independente ou através de uma interface incorporada ao Eclipse por meio do plug-in ADT. Abaixo está uma tela da interface acionada pela linha de comando do DOS com o comando ddms.bat:

Execução do comando ddms.bat na linha de comando
Execução do comando ddms.bat na linha de comando

Como se vê na imagem acima a interface independente de usuário do DDMS dá acesso as seguintes informações:


Lista de dispositivos conectados e os dispositivos Virtuais

No painel superior esquerdo mostra todas os dispositivos conectados através do USB ao seu Computador e também todos os dispositivos Virtuais (AVD) executados no emulador. Expandindo-se um máquina listada será apresentada a lista de todas as tarefas executadas nas máquinas virtuais (VMs) Dalvik.


Informações da VMS

No painel superior direito tem as informações de cada VMs Dalvik que estão sendo executadas nos dispositivos.


Informações de thread

As informações sobre as threads de cada processo são encontradas também na guia Threads do painel superior direito da janela do DDMS.


Gerenciador do sistema de arquivos


O sistema de arquivos do dispositivo Android ou do dispositivo virtual é explorado pelo gerenciador de arquivos do DDMS que é encontrado no menu File Explorer..., no menu Devices.  Nele pode pegar um arquivo do dispositivo para o computador, gravar para o dispositivo um arquivo que esteja no computador, deletar um arquivo do dispositivo ou adicionar uma pasta ao dispositivo. A imagem abaixo mostra a janela do File Explorer do DDMS:

Janela File Explorer do DDMS
Janela File Explorer do DDMS

Simulação de operações telefônicas e de localização

Na guia emulator control, no painel superior direito tem um simulador de chamadas telefônicas de voz e de SMS, também é possível simular a localização do dispositivo emulado através dessa guia.


Captura de tela

No menu Device há a opção Screen Capture..., que é uma opção que captura uma imagem do dispositivo conectado ao computador ou a um dispositivo virtual sendo executado no emulador.


Registro dos processos


Na parte inferior do DDMS é mostrado um registro da saída dos processos sendo executado no dispositivo selecionado. Pode ser  feito um filtro das informações levando em consideração os seguintes dados: Tag do log, Mensagem do log, PID do processo, pelo nome da Aplicação e pelo nível do Log. Conforme mostra imagem abaixo:




Dummping do dispositivo

No menu Device existem opções de Dump do estado do Dispositivo, do estado do Aplicativo e do estado do rádio.



Plug-in  ADT para o Eclipse

O plug-in ADT foi feito especialmente para o Eclipse e tem várias ferramentas para uma criação rápida de um projeto com toda a hierarquia de arquivos para a construção correta de um aplicativo Android. Com esse plug-in é feito no Eclipse todos os procedimentos para a construção do projeto, edição dos arquivos do projetos, compilação do aplicativo, execução e depuração.

Através do plug-in ADT os componentes do SDK do Android são executados no Eclipse. A seguir é mostrado os componentes do plug-in ADT utilizados no Eclipse para o desenvolvimento de Aplicativos Android.


Android Layout Editor

As interfaces de usuários dos aplicativos Android podem ser especificadas tanto em código como em arquivos XML.

O plug-in ADT adiciona um Editor Visual que possibilita ao desenvolvedor a visualização e composição do Layout das telas do aplicativo Android, esse editor é sempre aberto quando um arquivo de layout de tela é selecionado. Ele possibilita tanto a visualização do código XML do arquivo da tela como a representação do modo gráfico da tela.


Android Manifest Editor

É incluído também um editor para o arquivo de manifesto do Android, esse editor é especializado para ler o XML e mostrar de forma gráfica as opções de configuração do arquivo podendo também fazer alteração do manifesto do Android.

No Android também existem outros editores especializados para visualização e edição de outros arquivos XML do Android.


Compiladores do plug-in ADT

O plug-in ADT também fornece os compiladores específicos do Android que permitem seja utilizado o Java como linguagem de programação de aplicativos Android.


Depurador do plug-in do ADT

O plug-in ADT adiciona ao Eclipse os componentes que o permitem fazer todo o processo de depuração e execução do aplicativo em um dispositivo ou em um AVD de um emulador. Essa depuração pode ser feita com a perspectiva DDMS que o plug-in ADT adiciona ao Eclipse.


Dispositivos Virtuais

Os Dispositivos Virtuais Android (AVDs) são capazes de emular um dispositivo Android real e são executados em um emulador QEMU com uma imagem do sistema Android feita especialmente para ser rodada em um emulador.


Gerenciador de AVD

É um software que tem como função criar e gerenciar as AVDs que são utilizadas para o desenvolvimento dos aplicativos Android.

Mas informações sobre as ferramentas do SDK Android em:




segunda-feira, 25 de março de 2013

Como acelerar um emulador Android



Muitos desenvolvedores tem o problema com os emuladores que ficam muito lentos para iniciar e executar algumas tarefas com gráficos em seus computadores, essa lentidão causa um mal estar muito grande, pois temos que esperar um bom tempo para poder rodar uma simples aplicação. Pensando nisso o Google programou formas para se acelerar o emulador.

Existem três formas para se acelerar o emulador:

  • Usando snapshot
  • Usando aceleração de  hardware x86 na imagem do Android
  • Usando aceleração GPU

Usando snapshot

Sendo a inicialização do emulador do Android muito lenda, foi criado um meio de se trabalhar com snapshot das imagens do emulador que funciona da seguinte maneira após o primeiro boot o estado do emulador é gravado no disco rígido e na próxima inicialização o estado é lido para a memória sem passar pelos demorados procedimentos de inicialização do Android reduzindo o tempo de inicialização.

Utilizando o snapshot do Android

Primeiro você tem que habilitar o Snapshot na criação do AVD conforme se ver na imagem abaixo:

Criação de AVD com Snapshot
Criação de AVD com Snapshot

Após a criação do AVD inicialize-o e verifique se está ativada a opção de Salvar para snapshot conforme a imagem abaixo:

Habilitar Salvamento para Snapshot
Habilitar Salvamento para Snapshot

Depois da primeira inicializada do AVD as próximas serão significantemente mais rápidas.


Aceleração de Hardware x86

Para a aceleração de hardware x86 é necessário ser usada uma imagem x86 do Android pois o Emulador Android usa por padrão uma imagem ARM. E como essa arquitetura é muito diferente da x86 o emulador precisa fazer uma conversão de todas as instruções de ARM para o x86 e isso causa uma perca de performance.

Primeiro passo para se ter a aceleração de hardware x86 é baixar no Android SDK Manager os seguintes itens:

  • Intel x86 Emulador Accelerator (HAXM) e
  • Intel x86 Atom System Image (Para cada versão de API do Android que se usar para o desenvolvimento)


Conforme imagem abaixo:


Download dos componentes de Intel x86
Download de Intel x86

Para instalação do HAXM é necessário ir ao diretório extra  do SDK do Android e executar o seguinte arquivo: haxm-windows_r02.exe.

Agora é só criar um AVD usando uma imagem Intel Atom (x86) conforme imagem abaixo:



O desempenho da imagem do emulador  fica sensivelmente visível, mas esse recurso só funciona se seu computador possui  um processador Intel com suporte a VT-x.  Para mais informações sobre HAXM, acesse http://www.intel.com/software/android.


 Usando aceleração GPU OpenGL

O Emulador Android por padrão vem com a aceleração de GPU desabilitada e pode ser habilitada na criação do AVD, clicando na opção Use Host GPU, conforme imagem abaixo:

Aceleração por GPU
Aceleração por GPU


A aceleração GPU não é compatível com snapshot.

A aceleração GPU torna seu AVD bastante rápido para os testes de seus aplicativos, mais não tendo o snapshot o torna lento na inicialização.

Nos meus testes foi a melhor opção, pois a execução dos aplicativos ficou mais rápido mesmo tendo a inicialização se tornado mais lenta, é só inicializar a AVD antes dos testes e só desligar depois que terminar os trabalhos, assim se economizar um bom tempo durante os vários testes após cada mudança de código e compilação.

Espero ter ajudado com mais esse post.