Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Novatec
Authorized Portuguese translation of the English edition of Programing Android, First Edition ISBN 9781449389697 2011 Zigurd MedniekesLaird Dornin, Blake Meike and Masumi Nakamura. This translation is published and sold by permission of O'Reilly Media, Inc., the owner of all rights to publish and sell the same. Traduo em portugus autorizada da edio em ingls da obra Programing Android, First Edition ISBN 9781449389697 2011 Zigurd MedniekesLaird Dornin, Blake Meike e Masumi Nakamura. Esta traduo publicada e vendida com a permisso da O'Reilly Media, Inc., detentora de todos os direitos para publicao e venda desta obra. Novatec Editora Ltda. 2012. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. proibida a reproduo desta obra, mesmo parcial, por qualquer processo, sem prvia autorizao, por escrito, do autor e da Editora. Editor: Rubens Prates Traduo: Rafael Zanolli Reviso tcnica: Edgard Damiani Reviso gramatical: Marta Almeida de S Editorao eletrnica: Carolina Kuwabata ISBN: 978-85-7522-284-3 Histrico de impresses: Abril/2012 Primeira edio
Novatec Editora Ltda. Rua Lus Antnio dos Santos 110 02460-000 So Paulo, SP Brasil Tel.: +55 11 2959-6529 Fax: +55 11 2950-8869 E-mail: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec
VC20120322
parte I
A parte I deste livro mostra como instalar e utilizar suas ferramentas, alm das informaes necessrias sobre Java para que voc possa escrever cdigo funcional para o Android. O texto tambm fornece instrues sobre como projetar e utilizar bancos de dados SQL. Todos esses tpicos so elementos centrais no s do modelo de aplicativo Android que criaremos, mas tambm de seu sistema de persistncia e da implementao de padres de projeto essenciais em aplicativos Android.
16
captulo 1
Este captulo ensina a instalar o SDK (Software Development Kit, ou Kit de Desenvolvimento de Software) do Android e todos os softwares relacionados que possam vir a ser necessrios. Ao final, voc ser capaz de executar um simples programa Hello world (Ol mundo) em um emulador. Tanto sistemas Windows quanto Mac OSX e Linux podem ser utilizados no desenvolvimento de aplicativos para o Android. Neste captulo, carregaremos o software, apresentaremos as ferramentas do SDK e indicaremos fontes de cdigos de exemplo. No decorrer deste livro, e especialmente neste captulo, faremos referncia s instrues disponveis em muitos sites que explicam como instalar e atualizar as ferramentas utilizadas na criao de aplicativos Android. O local mais importante no qual voc pode encontrar informaes e links para ferramentas o site de desenvolvedores do Android: http://developer.android.com. Nosso foco gui-lo pelo processo de instalao, com explicaes que devero ajudlo a compreender como se encaixam os elementos do Android e de suas ferramentas de desenvolvimento, e at mesmo como os detalhes de cada elemento podem mudar. Os links citados neste livro podem sofrer alteraes com o tempo. Descries e links atualizados podem ser encontrados no site do livro. Voc pode encontrar um link para o site na pgina de catlogo deste livro (http://oreilly.com/catalog/0636920010364). Talvez seja interessante manter essa pgina aberta enquanto voc l o material, para que voc possa consultar os links sem ter de digitar os URLs impressos no livro.
18
Programando o Android
voc com outro propsito que no o desenvolvimento de software para o Android instalaes redundantes desses sistemas podem resultar em conflitos de verses. O SDK do Android compatvel com muitas verses recentes do JDK e do IDE Eclipse. Instalar a verso mais atual de cada uma dessas ferramentas dever ser suficiente. Os requisitos exatos esto especificados na pgina de requisitos do sistema (System Requirements) disponvel no site de desenvolvedores do Android: http://developer. android.com/sdk/requirements.html. possvel utilizar outros IDEs, que no sejam o Eclipse, no desenvolvimento de software para o Android. Informaes a esse respeito podem ser encontradas na documentao referente, neste endereo: http://developer.android.com/guide/developing/ other-ide.html. Neste livro, escolhemos o Eclipse porque ele oferece suporte ao maior nmero de ferramentas do SDK do Android e outros plug-ins, e pelo fato de ser o IDE Java mais utilizado. Ainda assim, o IntelliJ IDEA tambm uma alternativa empregada por muitos programadores que trabalham com Java.
Esse um dos poucos locais neste captulo em que mencionaremos um nmero de verso. Nesse caso, isso inevitvel: o nmero de verso do JDK faz parte do nome do pacote. Mas, assim como todos os softwares mencionados neste captulo, voc deve consultar a documentao online atualizada para determinar qual verso necessria. Se voc um usurio do Windows ou se tem de instalar o JDK a partir do site da Oracle, pode encontr-lo neste endereo: http://www.oracle.com/technetwork/java/ javase/downloads/index.html.
19
A pgina de download detectar automaticamente seu sistema e oferecer o download da verso correta. O instalador do qual voc far o download um arquivo executvel; basta execut-lo para instalar o JDK. Para confirmar se o JDK foi instalado corretamente, utilize o comando a seguir na linha de comando (terminal no Linux e no Mac; prompt de comando no Windows):
javac -version Se o comando javac no estiver em seu PATH, talvez seja necessrio adicionar manualmente o diretrio bin do JDK ao seu caminho.
Esse comando deve mostrar o nmero de verso correspondente verso do JDK instalada. Se voc instalou a reviso 20 do JDK do Java 6, o comando deve mostrar:
javac 1.6.0_20
Quando voc estiver lendo este texto, dependendo da verso atual do JDK disponvel, os nmeros de verso podem ser diferentes dos que mostramos aqui.
Caso no esteja claro qual JRE voc est utilizando, ou se voc acredita que esteja executando o JRE errado em um sistema Linux, utilize o comando a seguir para mostrar os JREs disponveis e selecionar o mais adequado:
sudo update-alternatives --config java
20
Programando o Android
sua opo com diversos plug-ins. exatamente isso que voc far, ao adicionar o plugin ADT sua instalao do Eclipse. O artigo sobre requisitos do sistema no site de desenvolvedores do Android lista trs opes de pacotes do Eclipse, como base para instalao e uso do IDE no desenvolvimento de softwares para o Android: Eclipse Classic (para o Eclipse 3.5 ou mais recente) Eclipse IDE for Java Developers Eclipse for RCP/Plug-in Developers Qualquer uma dessas opes ser suficiente, ainda que, a menos que voc tambm esteja desenvolvendo plug-ins para o Eclipse, escolher o pacote Classic ou Java Developers (EE ou padro) faa mais sentido. Os autores deste livro iniciaram utilizando o pacote Java EE Developers e as capturas de tela que utilizamos refletem essa escolha. O site de download do Eclipse determinar automaticamente para voc os downloads especficos disponveis de acordo com seu sistema, mas voc ter de escolher entre verses de 32 e 64 bits, de acordo com seu caso. Depois, voc far o download de um arquivo compactado. Para instalar o Eclipse, abra esse arquivo e copie a pasta eclipse para sua pasta base. O arquivo executvel para iniciar o Eclipse em seu sistema pode ser encontrado na pasta que voc acabou de extrair do arquivo.
Estamos falando srio quando dizemos que voc deve instalar o Eclipse em sua pasta home (ou em alguma outra pasta qual voc tenha acesso), especialmente se voc tem diversas contas de usurio em seu sistema. Lembre-se de que sua instalao do Eclipse ser apenas um elemento dentre os muitos agrupamentos possveis de plug-ins, e que voc seguir personalizando-a com plug-ins dedicados ao desenvolvimento de software para o Android. Alm disso, atualizaes do Eclipse so gerenciadas separadamente de outros softwares em seu sistema. Por essas e por muitas outras razes, muito difcil instalar e utilizar satisfatoriamente o Eclipse como um comando disponvel para todos os usurios em seu sistema. Para completar adequadamente uma instalao da forma que descrevemos, voc deve instalar o Eclipse em seu diretrio home e inicializ-lo a partir desse endereo.
Se voc est utilizando o Ubuntu ou outra distribuio Linux, no deve instalar o Eclipse a partir dos repositrios de sua distribuio. Se ele j estiver instalado dessa forma, voc deve remov-lo e instal-lo da forma que mostramos. A presena de um pacote eclipse nos repositrios do Ubuntu uma herana dos repositrios Debian (base para o Ubuntu) e no representa uma abordagem recomendada para instalao e uso do Eclipse, uma vez que, na maioria dos casos, os repositrios de sua distribuio utilizam verses mais antigas do Eclipse. Para confirmar se o Eclipse est instalado corretamente e se voc tem um ambiente de tempo de execuo Java que o aceita, inicie o arquivo executvel na pasta Eclipse. Pode ser interessante criar um atalho para esse arquivo, permitindo que voc inicie o Eclipse de modo mais prtico. Voc dever ver a tela de boas-vindas mostrada na figura 1.1.
21
Figura 1.1 Na primeira execuo do Eclipse, voc ver essa tela de boas-vindas.
O Eclipse implementado em Java e requer um ambiente de tempo de execuo Java (Java Runtime Environment, ou JRE). O JDK que voc instalou antes fornece um JRE. Se o Eclipse no puder ser executado, voc deve verificar se o JDK foi instalado corretamente.
SDK do Android
Com o JDK e o Eclipse instalados, voc agora tem os prerrequisitos para o SDK do Android e est pronto para instal-lo. O SDK do Android um conjunto de arquivos: bibliotecas, executveis, scripts, documentao etc. Instalar o SDK significa fazer o download da verso do SDK para sua plataforma e colocar seus arquivos em uma pasta em seu diretrio home. Para instalar o SDK, faa o download do pacote que corresponde ao seu sistema nesta pgina: http://developer.android.com/sdk/index.html. O download um arquivo compactado. Abra-o e extraia a pasta contida nele para dentro de sua pasta home.
Se estiver utilizando uma verso de 64 bits do Linux, talvez seja necessrio instalar o pacote ia32-libs. Para verificar se esse pacote necessrio, tente executar o comando adb (~/android-sdk-linux_*/platform-tools/adb). Caso seu sistema informe que o adb no pode ser encontrado (apesar de ele estar presente no diretrio platform-tools), isso provavelmente significa que a verso atual do adb, e possivelmente de outras ferramentas, no poder ser executada sem a instalao do pacote ia32-libs. O comando para instalar o pacote ia32-libs o seguinte:
sudo apt-get install ia32-libs
22
Programando o Android
O SDK contm uma ou duas pastas para ferramentas: uma chamada tools e, a partir da verso 8, outra chamada platform-tools. Essas pastas devem estar em seu path (uma lista de pastas nas quais seu sistema pesquisa arquivos executveis quando voc invoca um executvel a partir da linha de comando). Em sistemas Macintosh e Linux, a definio da varivel de ambiente PATH feita no arquivo .profile (Ubuntu) ou .bash_profile (Mac OS X) em seu diretrio home. Adicione uma linha a esse arquivo que instrua a varivel de ambiente PATH a incluir o diretrio tools do SDK (entradas individuais devem ser separadas por dois-pontos). Por exemplo, voc poderia utilizar a linha a seguir (substituindo ambas as instncias de ~/android-sdk-ARCH pelo caminho completo de sua instalao do SDK do Android):
export PATH=$PATH:~/android-sdk-ARCH/tools:~/android-sdk-ARCH/platform-tools
Em sistemas Windows, clique em Iniciar e, depois, com o boto direito em Meu Computador, escolha Propriedades. Depois, clique em Avanado e clique no boto Variveis de ambiente. Clique duas vezes na varivel de sistema PATH e adicione o caminho das pastas. Faa isso no final do valor dessa varivel (no altere nenhuma informao j presente!) e adicione os dois caminhos ao final da linha, separados por ponto e vrgula, sem espaos em branco antes ou depois deles. Por exemplo:
;C:\android-sdk-windows\tools;C:\android-sdk-windows\platform-tools
Depois de editar seu path no Windows, Mac ou Linux, feche e abra novamente os prompts de comando ou terminais abertos para que sejam reconhecidas as novas configuraes da varivel PATH (no Ubuntu, talvez voc tenha de efetuar novamente seu login, a menos que seu programa de terminal esteja configurado como um shell de login).
A imagem da figura 1.2 mostra o gerenciador do AVD e do SDK, com todas as verses disponveis do SDK selecionadas para instalao.
23
Figura 1.2 Gerenciador de SDK e AVD que permite a instalao de nveis da API do Android.
Os pacotes intitulados SDK platform oferecem suporte criao de aplicativos compatveis com diferentes nveis de API do Android. Voc deve instalar ao menos a verso mais recente (de nmero mais alto), mas tambm uma boa opo instalar todos os nveis de API disponveis, assim como todos os pacotes de add-ons da API do Google, caso algum dia voc queira criar aplicativos que possam ser executados em verses mais antigas do Android. Voc tambm deve instalar as verses mais recentes do pacote de aplicativos de exemplo. Tambm necessrio que voc instale o pacote SDK Platform-Tools do Android.
24
Programando o Android
Utilizao do assistente Install New Software para download e instalao do plug-in ADT
Voc inicia o assistente Install New Software (Instalar Novo Software) selecionando o menu Help > Install New Software (Figura 1.3). Para instalar o plug-in ADT, digite o URL a seguir, no campo Work With (Trabalhar com), e pressione Enter: https://dl-ssl.google.com/android/ eclipse/ (Figura 1.4).
Assim que tiver adicionado o URL lista de sites para aquisio de novos plugins, voc ver uma entrada Developer Tools (Ferramentas do Desenvolvedor) na lista de softwares disponveis. Selecione o item Developer Tools, clicando na caixa de seleo ao seu lado, e clique no boto Next. A tela seguinte pedir que voc aceite a licena para esse software. Depois
25
de faz-lo, clique em Finish e o ADT ser instalado. Voc ter de reiniciar o Eclipse para completar a instalao.
Figura 1.4 Dilogo Install New Software do Eclipse mostrando o plug-in ADT como disponvel.
26
Programando o Android
Em seguida, um dilogo com as configuraes do Android ser mostrado. Nele, um campo de entrada de texto, SDK location (localizao do SDK), surgir prximo ao topo. Voc deve digitar o caminho para o local em que colocou o SDK, ou pode navegar at a localizao para selecionar o diretrio (Figura 1.5). Clique em Apply. Note que os alvos de compilao que voc instalou, como descrito antes neste captulo, tambm esto listados aqui.
Figura 1.5 Configurao da localizao do SDK no plug-in ADT do Eclipse utilizando o dilogo de preferncias do Android.
27
projeto como um projeto Android, voc diz ao Eclipse que o plug-in ADT e outras ferramentas do Android devero ser utilizados em conjunto neste projeto.
Informaes de referncia e instrues online detalhadas para criao de um projeto Android podem ser encontradas neste endereo: http:// developer.android.com/guide/developing/eclipse-adt.html.
Inicie seu novo projeto com o comando de menu File > New > Android Project. Localize a opo Android Project no dilogo New Project (ela deve estar sob uma seo intitulada Android). Clique em Next e a caixa de dilogo New Project surgir (Figura 1.6).
28
Programando o Android
Target (Alvo)
As imagens do sistema Android que voc instalou no SDK surgem na lista de alvos de compilao. Voc pode escolher uma delas, alm do fornecedor, da plataforma (nmero de verso do sistema operacional Android) e do nvel de API correspondentes ao seu caso, identificando a verso para a qual seu aplicativo foi construdo. A plataforma e o nvel de API representam os parmetros de maior importncia: so eles que governam a biblioteca da plataforma Android com a qual seu aplicativo ser compilado e o nvel de API aceito APIs com um nvel mais alto do que o selecionado no estaro disponveis para o seu programa. Por ora, escolha a verso mais recente do sistema operacional Android e o nvel de API que voc instalou.
29
Activity (Atividade)
Uma atividade uma unidade de interface de usurio interativa de um aplicativo Android, que geralmente corresponde a um grupo de objetos de interface de usurio que ocupam a tela inteira. Opcionalmente, quando voc cria um projeto, pode escolher a criao do esqueleto de uma atividade. Caso voc esteja criando um aplicativo visual (e no um servio, que pode ser destitudo de representao visual na interface do usurio), essa uma forma conveniente de criar a atividade com a qual o aplicativo iniciar. Nesse exemplo, voc deve criar uma atividade com o nome TestActivity.
Figura 1.7 Visualizao do Package Explorer, mostrando os arquivos e componentes que fazem parte do projeto.
30
Programando o Android
Caso voc expanda a visualizao da hierarquia de seu projeto, clicando no sinal + (no Windows) ou no tringulo (Mac e Linux) ao lado do nome dele, voc ver as vrias partes de um projeto Android. Expanda a pasta src e voc ver um pacote Java com o nome que foi digitado no assistente. Expanda esse pacote e voc encontrar a classe Activity que o assistente criou para voc. Clique duas vezes nela e voc ver o cdigo Java de seu primeiro programa Android.
package com.oreilly.demo.pa.ch01.testapp; import android.app.Activity; import android.os.Bundle; import com.oreilly.demo.pa.ch01.R; public class TestActivity extends Activity { /** Chamado quando a atividade criada */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
Se voc vem acompanhando os passos que apresentamos e encontrou o mesmo resultado em seu computador, ento sua instalao do SDK provavelmente est funcionando corretamente. Para nos certificarmos disso, vamos explorar mais um pouco o SDK, executando seu primeiro programa em um emulador e tambm em um dispositivo Android, caso voc tenha um em mos.
31
com o intuito de executar o programa que acabamos de criar com o assistente New Android Project.
Voc ter de criar um AVD com uma imagem de sistema que no seja mais recente do que a verso especificada para o projeto que voc criou. Primeiro, pressione o boto New.... Voc ver a caixa de dilogo Create New Android Virtual Device (AVD), na qual voc especifica os parmetros de seu novo AVD (Figura 1.9):
32
Programando o Android
Essa tela permite que voc defina os parmetros para seu novo AVD:
Name (Nome)
O nome de seu AVD. Voc pode utilizar qualquer nome para um AVD, mas prefira um nome que indique a imagem de sistema utilizada.
Target (Alvo)
O parmetro Target define qual imagem de sistema ser utilizada nesse AVD. Ela deve ser a mesma, ou mais recente, que a verso selecionada como alvo de compilao em seu primeiro projeto para o Android.
Skin
O skin de um AVD define principalmente o tamanho da tela. Voc no ter de alterar a configurao padro para verificar se sua instalao funciona, mas interessante emular diferentes tamanhos de tela para verificar se seus layouts funcionam em dispositivos de resolues distintas.
Hardware
O campo Hardware da configurao do AVD permite que voc defina parmetros indicando qual hardware opcional est presente. Voc no ter de alterar as configuraes padro para este projeto. Preencha os campos Name, Target e SD Card e crie um novo AVD pressionando o boto Create AVD. Caso voc no tenha criado um AVD com uma imagem que corresponda a, ou seja mais recente do que a verso especificada em seu projeto para o Android, voc no ser capaz de executar o programa.
33
Para executar seu aplicativo, clique com o boto direito no projeto que voc criou e, no menu de contexto, selecione Run As... > Android Application. Se o AVD que voc criou for compatvel com o aplicativo criado, ele inicializar o sistema operacional Android, iniciando seu aplicativo. Voc dever ver seu aplicativo sendo executado no AVD de forma parecida com o que temos na figura 1.10.
Caso voc tenha mais de um AVD compatvel configurado, a caixa de dilogo Android Device Chooser surgir, pedindo que voc selecione entre os AVDs ou entre os dispositivos Android conectados ao seu sistema (se houver), ou ainda que escolha um AVD para iniciar. A figura 1.11 exibe o Android Device Chooser, mostrando um AVD que est sendo executado e outro que pode ser iniciado.
34
Programando o Android
Caso voc esteja utilizando um sistema Linux, ter de criar um arquivo rules para seu dispositivo Android. Caso voc esteja utilizando um Mac OS X, nenhuma configurao ser necessria. Informaes detalhadas de referncia sobre depurao USB podem ser encontradas neste endereo: http://developer.android.com/guide/developing/device.html. Voc tambm ter de habilitar o recurso de depurao USB em seu dispositivo Android. Na maioria dos casos, voc iniciar o aplicativo Settings, selecionar Applications, depois Development e ento ver uma opo para habilitar ou desabilitar a depurao USB. Se um AVD estiver configurado ou sendo executado, o Android Device Chooser surgir, mostrando tanto o dispositivo Android conectado quanto o AVD. Selecione o dispositivo e o aplicativo Android ser carregado e executado nele.
35
Componentes do SDK
O SDK do Android composto principalmente de componentes prontos para uso, somados a outros, de propsitos especficos. Em muitos casos, configuraes, plugins e extenses adaptam esses componentes ao Android. O SDK do Android um exemplo perfeito do desenvolvimento eficiente de um SDK moderno e completo. O Google adotou essa abordagem para que pudesse disponibilizar rapidamente o Android no mercado. Voc experimentar isso em primeira mo medida que explora seus componentes. Eclipse, a linguagem Java, QEMU e outras plataformas existentes, ferramentas e tecnologias compem algumas das partes mais importantes do SDK do Android. Na criao do programa que confirma se sua instalao do SDK ocorreu corretamente, voc j utilizou muitos dos componentes do SDK. Aqui, identificaremos e descreveremos os componentes do SDK envolvidos na criao de seu programa, assim como outras partes do SDK que voc ainda utilizar.
36
Programando o Android
Informaes de thread
Informaes sobre as threads de cada processo podem ser acessadas na guia Threads, no painel superior direito da janela DDMS.
37
Captura de tela
O comando Screen capture..., no menu Device, captura uma imagem a partir da tela mostrada no dispositivo ou dispositivo virtual Android selecionado.
Logging
O painel inferior da janela do DDMS mostra um registro (log) da sada dos processos no dispositivo ou dispositivo virtual selecionado. Voc pode filtrar essas informaes selecionando uma opo a partir dos botes na barra de ferramentas acima do painel de registro.
38
Programando o Android
39
DDMS
Na seo Dalvik Debug Monitor Server (DDMS) que vimos antes neste captulo, , descrevemos o Dalvik Debug Monitor e mostramos como invocar a interface de usurio DDMS a partir da linha de comando. A interface de usurio DDMS tambm est disponvel dentro do Eclipse. Voc pode acess-la utilizando o comando Window > Open Perspective > DDMS nos menus do Eclipse. Voc tambm pode acessar separadamente cada viso que compe a perspectiva do DDMS, utilizando o menu Window > Show View e selecionando, por exemplo, a visualizao Logcat.
40
Programando o Android
QEMU
O QEMU a base dos dispositivos virtuais Android. Alm disso, trata-se de uma ferramenta de ampla utilidade, empregada em diversos sistemas de emulao, mesmo fora do SDK do Android. Ainda que voc configure o QEMU indiretamente, por meio do gerenciador do AVD e do SDK, em algum momento voc pode ter de ajustar as configuraes de emulao de formas no aceitas pelas ferramentas do SDK, ou pode estar curioso quanto s capacidades e limitaes do QEMU. Por sorte, ele tem uma comunidade de usurios extensa e muito ativa, que pode ser encontrada em http://www.qemu.org.
41
Hierarchy Viewer
O visualizador de hierarquia exibe e permite a anlise da hierarquia de visualizao da atividade atual, ou de um dispositivo Android selecionado. Isso permite que voc encontre e diagnostique problemas na hierarquia de suas visualizaes, mesmo enquanto seu aplicativo est sendo executado, ou que voc analise a hierarquia das visualizaes de outros aplicativos para ver como foram projetados. Ele tambm permite que voc visualize uma representao ampliada da tela, com orientaes de alinhamento que ajudam a identificar problemas nos layouts. Informaes detalhadas sobre o Hierarchy Viewer podem ser encontradas neste endereo: http://developer. android.com/guide/developing/tools/hierarchy-viewer.html.
Layoutopt
O Layoutopt um analisador esttico que opera nos arquivos de layout XML e que pode diagnosticar problemas com os layouts do Android. Informaes detalhadas sobre o Layoutopt podem ser encontradas neste endereo: http://developer.android. com/guide/developing/tools/layoutopt.html.
Monkey
O Monkey uma ferramenta de automao de testes, executada em seu emulador ou dispositivo, que invocada utilizando outra ferramenta do SDK: o adb. O adb permite que voc inicie um shell em um emulador ou dispositivo, a partir do qual o monkey invocado de maneira semelhante a este exemplo:
adb shell monkey --wait-dbg -p your.package.name 500
Essa invocao envia 500 eventos aleatrios ao aplicativo especificado (pelo nome do pacote), aguardando at que um depurador seja anexado para disparar os eventos. Informaes detalhadas sobre o monkey podem ser encontradas neste endereo: http://developer.android.com/guide/developing/tools/monkey.html.
sqlite3
O Android utiliza o SQLite como banco de dados em vrios sistemas, e fornece APIs para os aplicativos, que tornam o SQLite conveniente para armazenamento e apresentao de dados. O SQLite tambm tem uma interface de linha de comando, e o comando sqlite3 permite que desenvolvedores despejem (dump) esquemas de bancos de dados e realizem outras operaes em bancos de dados do Android. Esses bancos de dados esto, evidentemente, em um dispositivo Android ou contidos em um dispositivo virtual Android (AVD), e, portanto, o comando sqlite3 est disponvel no shell adb. Instrues detalhadas para acessar a linha de comando do
42
Programando o Android
sqlite3, a partir do shell adb, podem ser encontradas neste endereo: http://developer. android.com/guide/developing/tools/adb.html#shellcommands. Falaremos do sqlite3 na seo Exemplo de manipulao do banco de dados utilizando sqlite3 no captulo 10. ,
keytool
O keytool gera chaves criptografadas e utilizado pelo plug-in ADT para criar chaves temporrias, com as quais ele assina o cdigo para depurao. Na maioria dos casos, voc utilizar essa ferramenta para criar um certificado de assinatura quando do lanamento de seus aplicativos, como descrito na seo Criao de um certificado autoassinado no captulo 4. ,
Zipalign
O Zipalign permite acesso otimizado aos dados das verses de produo de aplicativos Android. Essa otimizao deve ser realizada apenas depois de o aplicativo ter sido assinado para lanamento (release), uma vez que a assinatura afeta o alinhamento dos bytes. Informaes detalhadas sobre o Zipalign podem ser encontradas neste endereo: http://developer.android.com/guide/developing/tools/zipalign.html.
Draw9patch
Um 9 patch um tipo especial de recurso do Android, composto de nove imagens, sendo til quando voc deseja, por exemplo, botes que aumentem de tamanho sem alterar o raio de seus cantos. O Draw9patch um programa de desenho especializado para criao e visualizao de recursos desses tipos. Detalhes sobre o Draw9patch podem ser encontrados neste endereo: http://developer.android.com/guide/developing/ tools/draw9patch.html.
Android
O comando android pode ser utilizado para invocar o gerenciador de SDK e AVD a partir da linha de comando, como descrito nas instrues de instalao do SDK que vimos na seo O SDK do Android anteriormente neste captulo. Ele tambm pode , ser utilizado para criar um projeto Android a partir da linha de comando. Dessa forma, ele faz com que sejam geradas todas as pastas de projetos, o manifesto, as propriedades de compilao e o script ant para compilao do projeto. Mais detalhes sobre o uso do comando android podem ser encontrados neste endereo: http://developer.android. com/guide/developing/other-ide.html#CreatingAProject.
43
Mantendo-se atualizado
O JDK, o Eclipse e o SDK do Android so fornecidos separadamente. As ferramentas de desenvolvimento de software para o Android podem sofrer alteraes muito rapidamente. por isso que, neste livro, e especialmente neste captulo, fazemos referncia ao site de desenvolvedores do Android, para que voc tenha acesso s informaes mais atualizadas e s verses compatveis mais recentes de suas ferramentas. Manter suas ferramentas atualizadas e compatveis provavelmente ser uma tarefa necessria, enquanto voc aprende a desenvolver softwares para o Android. Windows, Mac OS X e Linux tm mecanismos de atualizao de sistema capazes de manter seus softwares atualizados. Mas, em virtude da forma como o SDK do Android organizado, voc ter de manter atualizados sistemas de software separados, utilizando mecanismos distintos.
44
Programando o Android
Normalmente, voc poder utilizar o boto Select All para instalar todas as atualizaes disponveis. As atualizaes que voc ver listadas em seu sistema dependem dos mdulos do Eclipse instalados e da ltima atualizao feita em seu Eclipse.
45
Se uma atualizao for necessria e voc estiver utilizando um sistema Mac ou Linux, verifique as atualizaes disponveis para seu sistema e confira se uma nova verso do JDK est includa. Se o JDK foi instalado em seu sistema pelo fornecedor ou se voc o instalou a partir de seus repositrios de distribuio Linux, atualizaes estaro disponveis por meio do mecanismo de atualizaes em seu sistema.
Cdigos de exemplo
Depois de instalar o SDK do Android e de verificar seu funcionamento, voc estar pronto para iniciar sua explorao. Mesmo que voc no esteja acostumado s classes do Android Framework e seja um novato em Java, explorar alguns cdigos de exemplo servir para aumentar sua confiana na instalao do SDK, antes de avanarmos s outras sees deste livro.
Cada aplicativo de exemplo que acompanha o SDK corresponde a um artigo do site de desenvolvedores do Android. Mais informaes sobre cada exemplo podem ser encontradas nesse endereo. Todos os exemplos esto listados nesta pgina de documentao: http://developer.android.com/resources/samples/index.html. H mais de uma dzia de aplicativos nessa pgina, sendo que um, o aplicativo de demonstrao da API, aborda a maioria das APIs do Android. Criar alguns projetos com base nesses exemplos permitir que voc se familiarize com o funcionamento desses programas e ajudar a entender os prximos captulos, mesmo que voc ainda no entenda completamente o que est lendo.
46
Programando o Android