Académique Documents
Professionnel Documents
Culture Documents
1. Introduo
Voc configura o seu ambiente para desenvolver aplicaes Android em um mquina-host. Falando mais claramente, voc cria os aplicativos em um computador abundante de recursos e os envia (uploading) a um celular de destino, que possui restries de memria e armazenamentos. Porm, mesmo sem o aparelho de celular real, voc pode testar suas aplicaes em emuladores; essa ser nossa aproximao. Aqui explicamos os passos necessrios para voc ter o Android pronto para rodar em sua mquina. Utilizamos como mquina-host uma plataforma rodando o Ubuntu 9.04 - o Jaunty Jackalope - distribuio Linux, lanada em abril de 2009. Mos a obra !
2. Uso do Eclipse
Como Ambiente de Desenvolvimento Integrado (Integrated Development Environment - IDE) usaremos o Eclipse. O Eclipse a IDE que apresenta a melhor integrao com o SDK do Android, alm de ser livre; o plug-in, instrumentao dessa integrao, mantido pela Google. Voc pode usar o NetBeansIDE; porm seu plug-in responsabilidade de terceiros e voc ter que preparar a plataforma por sua conta. Se voc ainda no tem o Eclipse instalado, acesse http://eclipse.org/downloads para obt-lo. Escolha a verso mais atual; usaremos a verso 3.5.0 (conhecida como Galileo); a figura abaixo mostra a configurao da plataforma utilizada nesse tutorial (o rob verde denuncia que o Android Development Tollkit 0.9.5v - ADT est devidamente instalado - assunto desse captulo):
Basicamente, o seguinte conjunto de software e ferramentas sero necessrios: Kit de desenvolvimento para Java da Sun (JDK); usamos java version "1.6.0_16" Java(TM) SE Runtime Environment (build 1.6.0_16-b01) Java HotSpot(TM) Server VM (build 14.2-b01, mixed mode); O Eclipse IDE; temos o Galileo instalado; Ferramenta para desenvolvimento Android (ADT), um plug-in especializado mantido pela Google; Kit de desenvolvimento de software Android (ANDROID SDK); Como os dois primeiros software so prprios de qualquer desenvolvimento em Java, vamos nos concentrar no terceiro item em diante:
3. Instalando o ADT
A Ferramenta de Desenvolvimento Android (Android Development Toolkit) um plug-in desenvolvido e mantido pela Google. uma excelente interface grfica, com considervel abstrao; sem esse plug-in teramos que digitar na linha de comando (shell no linux, ou prompt de comando no Windows) para obter resultados semelhantes. Abra o Eclipse. Acione e preencha a janela abaixo, selecionando-a no menu Help > Install New Software... e pressionando Add... ;
Selecione todas as ferramentas oferecidas : Android DDMS e ADT, conforme figura abaixo:
Pressione Next... e na tela seguinte leia, se quiser, e/ou aceite os termos de uso, selecionando I Accept the terms of license agreements, para finalmente pressionar Finish para dar incio ao downloads do plug-in.
O downloads relativamente demorado e dependente do seu link. Tenha um pouco de pacincia. abaixo a aparncia da tela nessa fase:
Ao termino do Download, o Eclipse recomenda que se re-inicialize a plataforma; Pressione YES e aguarde a reentrada do Eclipse:
Ao reabrir o Eclipse voc notar a figura de um pequeno celular configura o Android SDK e o AVD, assuntos seguintes. Vamos, antes, buscar o Android SDK na internet;
Nessa prxima janela apontaremos nosso browser ao Android SDK conforme link abaixo:
Escolha o pacote prprio da sua plataforma e baixe o Android Standard Development Kit - SDK. Descompacte-o com sua ferramenta de unzip favorita em uma pasta da sua escolha; utilizamos a plataforma Linux e a localizao /home/giljr/pograms/android; A configurao dos diretrios aparece na figura abaixo:
A prxima etapa entrar no Eclipse e apontar a localizao do SDK do Android que acabamos de baixar. Pressione a figura do pequeno celular ; Uma tela aparece pedido a sua permisso para enviar dados estatsticos de uso da ferramenta equipe de desenvolvimento do Android; aceite e v ao menu principal, acesse a tela seguinte pelo caminho Windows > Preferences e indique o caminho do SDK do Android ao plug-in:
Agora vamos pressionar novamente o boto da figura do celularzinho e acessar o Gerenciador SDK e AVD do Android (Android SDK and AVD Manager) na aba Avalable Packages; click no pequeno tringulo para abrir as opes de catlogo oferecidos pelo Android e selecione Google APIs by Google Inc., Android API 7, revision 1, conforme abaixo, e pressione Install Selected; opcionalmente voc pode baixar a documentao, para estudos.
Ao tmino das operaes os seguintes pacotes estaro presentes na aba Installed Packages:
Uma tela pedindo para reiniciar o ADB (Android Debugger Bridge) aparece solicitando sua permisso para esse servidor; no se preocupe agora com o ADB; permita a operao e prossiga... Parabns, sua plataforma android esta instalada ! Na prxima seco vamos apresentar-lhe a sensao de rodar o seu primeiro programa Android no emulador.
10
Observe que no utilizaremos o pacote Google APIs, uma vez que no usaremos servios de mapeamentos; selecione apenas o pacote Android 2.1 Pressione Next >. Navegue na estrutura de diretrios criada automaticamente pelo plug-in; vamos analis-las rapidamente:
11
Fontes (em src) E a estrutura de diretrios das fontes que corresponde ao nome do pacote escolhido no incio, nesse caso: gil.jr.android.intro; Embora no aparece na interface, h um modelo (template) em Java para gerar a classe R.java; essa classe gerada automaticamente pelo plug-in que compila todos os recursos, contidos no diretrio res, para constantes de nmeros inteiros, facilitando s outras classes Java acesso a esses recursos. gen Encontramos o arquivo R.Class, compilado automaticamente pelo plug-in; no se preocupe agora com esse arquivo; embora seja importante na arquitetura do Android, saiba apenas que um arquivo gerado automaticamente e permite acesso aos recursos indicados na pasta res; res Basicamente d abrigo aos recursos a serem utilizados pelas Atividade: so os seguintes: Recursos desenhveis (drowable): pasta para as images adicionadas ao projeto; no caso, automaticamente, o SDK do Android forneceu o cone-padro do Android; Recursos de layout (layout): pasta com arquivos em XML que informam como organizar os itens na tela do celular, quando a aplicao for executada, e; Valores constantes (values): seguindo boas prticas de software as strings utilizadas pelas atividades so adicionadas nessa pasta, separando os cdigos que tratam dos negcios daqueles referentes interface; mant-los fora das fontes torna mais fcil a personalizao da aplicao, como a sua adaptao para outros idiomas; Manifesto (AndroidManifest.xml) o descritor de instalao do seu aplicativo, que informa ao sistema de compilao do Android aquilo necessrio para criar, empacotar (package) e instalar seu programa no telefone celular; possui editor especializado que ser descrito em outro captulo.
12
Olhando rapidamente o cdigo-modelo gerado pelo plug-in, vamos analisar alguns pontos: package jr.gil.android.intro; import android.app.Activity; import android.os.Bundle; public class AloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } } Aps as importaes dos pacotes bsicos necessrios, declaramos a classe como filha da classe android.app.Activity. O ciclo de vida dessa Atividade implementada, em parte, pelo mtodo onCreate, que corresponde a chamada automtica da plataforma logo na inicializao do aplicativo pelo sistema operacional base; normalmente, aqui, adicionamos cdigos que so inicializados apenas uma vez; O parmetro savedInstanceState, do tipo android.os.Bundle; a maneira de transmitir dados entre Atividades; no usaremos nesse primeiro exemplo. Atente para a linha setContentView(R.loyout.main): Lembra-se que o arquivo R.java gerado automaticamente e contm referncias em Java para cada um dos recursos adicionados pasta res ? pois bem, R.layout.main uma constante que aponta para o arquivo main.xml; saiba que nunca ser necessrio editar a classe R.java e que o plug-in se encarrega de alter-lo conforme se adiciona arquivos a pasta de recursos (res). Agora na janela Eclipse Package Explorer, clique duas vezes no arquivo main.xml para abri-lo no editor.
13
Perceba que a tag TextView e filha da LinearLayout, ou seja: escolhemos um layout simples em linhas dispostas verticamente (android:orientation="vertical"); apresentaremos, segundo essa configurao, apenas uma caixa de texto, TextView, cujo texto se encontra no caminho @string/hello, que, por sua vez, corresponde a uma das chaves do arquivo res/value/strings.xml; A nica alterao que faremos na base das fontes fornecidas pelo plug-in e no arquivo res/values/strings.xml; Altere as linhas conforme figura abaixo, para personalizarmos nossa primeira investida no rob Android.
Pronto ! Vamos ao menu principal do Eclipse Run > Run (CRTL + F11); Observe que ocorre um erro e a seguinte tela informa que no h nenhum AVD (Android Virtual Device) disponvel e se pergunta se deseja criar um; entre com Yes e prossiga...
O Aparelho virtual Android - (Android Virtual Device - AVD) uma instncia executvel do emulador, que faz s vezes do aparelho de telefonia celular real; foi desenvolvido e mantido pelos engenheiros da Google e foi a grande cartada da empresa, uma vez que, poca do primeiro concurso de programas Android, ainda no havia no mercado o T-Mobile G1, o primeiro aparelho celular a rodar o sistema operacional Android; confira o Apendice A para tomar conhecimento dos aparelhos de celular compatveis com o sistema operacional Android, hoje disponveis no mercado, quando da publicao desse captulo. Configure a instncia do emulador como descrito na figura abaixo para cri-lo:
14
A prxima tela informa o sucesso da operao e descreve as caractersticas do emulador usado para rodar nosso primeiro aplicativo. Observamos que esse est baseado somente no Android 2.1 e que no consta nesse servios necessrios para rodar aplicativos baseados em servios de localizao (Location-Based Service - LBS), que ser desenvolvido mais adiante, em outro captulo.
Aps essa derradeira configurao finalmente o emulador d a partida... Observe o carregamento inicial do emulador, que demanda muitos recursos da plataforma-host e se constitui em um processo relativamente demorado.
15
Figure 1.21.
16
Observe na janela Console (Windows > Show View > Console - CRTL+SHIFT+QC ) os seguintes logs, indicando sucesso da instalao do pacotePrimeiroPrograma.apk... [2010-01-30 15:13:41 - PrimeiroPrograma]Installing PrimeiroPrograma.apk... [2010-01-30 15:13:54 - PrimeiroPrograma] Success! [2010-01-30 15:13:54 - PrimeiroPrograma] Starting activity jr.gil.android.intro.AloAndroid on device [2010-01-30 15:14:02 - PrimeiroPrograma] { cmp=jr.gil.android.intro/.AloAndroid } Agora hora do laser ! A seguinte tela deve aparecer, apresentado a tela configurada pelo aplicativo: ActivityManager: Starting: Intent
Vamos browsear pelo celular (emulador) e descobrir a enormidade de aplicativos pr-build no Android...e lembre-se, s alteramos trs linhas de cdigo; O poderio da plataforma Android e a aposta da Google nela e competir com o Simian e IPhone, demonstrada nesse breve apanhado: pouca coisa exigida diretamente por programao; o arcabouo dos aplicativos, navegabilidade s diversas Atividades pr-configuradas, so disponibilizadas automaticamente: um espetculo de se v ! batendo palmas...(depois de colocar o celular no bolso, claro !?) Com essa simples codificao voc j pode impressionar qualquer um ao lhe apresentar um aparelho rodando Android, cujos cdigos voc mesmo carregou ! Bom, voltando a navegao, clique no boto do trazendo a figura de uma casa ; a seguinte tela aparece...
17
18
Perceba que j se apresenta um cone do nosso aplicativo: Al Android , conforme configurao - Fig 0?; emule o touch-screen com o ponteiro do mouse e acione a tela de nossa Atividade pressionando-o; voc voltar a figura ??. Bom, agora, simulando o fechamento do celular e seu encerramento, pressione a tecla power do celular mantenha-a pressionada por alguns segundos... e
Figure 1.25.
Voc acaba de simular o desligamento do celular. Se demora o emulador descarregar, clique no boto fechar da janela; dessa maneira matamos o processo de maneira mais rpida. chegamos assim ao final desse captulo, onde configuramos nossa plataforma para trabalharmos no Android e analisamos nosso primeiro cdigo; tudo muito fcil e simple: promessa da Google !
19