Seu primeiro aplicativo para Android



Programe seu andróide




                                                                                                                      PROGRAMAÇÃO
           A plataforma Android, do Google, vai equipar com tecnologia de ponta diversos
           aparelhos celulares. Veja como é fácil começar a programar aplicativos nela.
           por Alessandro de Oliveira Faria




 Jean Scheijen – www.sxc.hu




O
          Android é uma plata-          to do Android provê ferramentas e      Em outras palavras, trata-se de
          forma de código aberto        chamadas via APIs para o desen-      um pacote com programas para
          para dispositivos portáteis   volvimento de aplicativos baseados   celulares, já com um sistema
criado pelo Google em parceria          na linguagem Java.                   operacional, middleware, aplica-
com a Open Handset Alliance
(OHA). Trata-se de uma aliança
para o telefone celular aberto,
composta por mais de 30 empre-
sas do mercado de TI que apóiam
soluções de código-fonte aberto,
como Samsung, Intel, Motorola,
Qualcomm e Telefónica. A OHA
pretende repetir a estratégia da
IBM com a fabricação do PC,
composto por partes facilmente
adquiridas no mercado.
   Essa plataforma funciona como
um sistema operacional como os
já existentes Symbian e Windows®
Mobile, com a diferença de ser
baseado em Código Aberto. Com
isso, qualquer desenvolvedor pode
criar aplicativos para a plataforma
Android. O kit de desenvolvimen-        Figura 1 Camadas da plataforma Android.



Linux Magazine #43 | Junho de 2008                                                                               73
PROGRAMAÇÃO | Google Android




                                                     Arquitetura                            SQLite. Todos esses recursos estão
                                                     A arquitetura do Android é di-         disponíveis no framework para o
                                                     vidida em cinco camadas, orga-         desenvolvimento de aplicativos.
                                                     nizadas como mostra a figura 1 :          A pequena camada do ambien-
                                                     kernel Linux, bibliotecas, am-         te de execução ( Android Runti-
                                                     biente de execução, framework          me , na figura 1 ) é uma instância
            Figura 2 Especificação do site para       e aplicativo.                          da máquina virtual Dalvik cria-
                      o plugin
                                                        A camada do kernel Linux é          da para cada aplicação executa-
                                                     composta pelo kernel 2.6 e se          da no Android. A Dalvik é uma
            tivos e interface de usuário. Tais       responsabiliza pelos serviços, se-     máquina virtual com melhor
            recursos permitirão que o Goo-           gurança, gerenciamento de me-          desempenho, maior integração
            gle e outras empresas ofereçam           mória e processos, rede e drivers.     com a nova geração de hardware
            recursos mais ricos aos usuários         Essa camada também é respon-           e projetada para executar várias
            que se encontram distantes de um         sável pela abstração do hardware       máquinas virtuais paralelamen-
            computador de mesa.                      do dispositivo.                        te. Além disso, é otimizada para
               Os principais recursos dessa             A segunda camada, a de biblio-      consumo mínimo de memória,
            plataforma móvel são a máquina           tecas, carrega consigo um conjunto     bateria e CPU.
            virtual otimizada, o navegador           de bibliotecas C/C++ utilizadas pelo      Sobre essas camadas, localiza-se
            integrado, a biblioteca 2D e 3D,         sistema. Estão incluídas nesse con-    a camada do framework (Applica-
            o banco SQLite e o plugin para o         junto a biblioteca C padrão (Libc)     tion Framework, na figura 1). Nela,
            Eclipse, chamado ADT.                    e também aquelas das áreas de          encontramos todas as APIs e os re-
                                                                        multimídia, vi-     cursos utilizados pelos aplicativos,
                                                                        sualização de ca-   com classes visuais como botões e
                                                                        madas 2D e 3D,      views, provedor de conteúdo (tro-
                                                                        funções para na-    ca de recursos entre aplicativos)
                                                                        vegadores web,      e gerenciadores de recursos, de
                                                                        funções para        notificação e de pacotes.
                                                                        gráficos, funções       Acima de todas as outras cama-
                                                                        de aceleração de    das está a de aplicativos, na qual
                                                                        hardware, ren-      se encontram todos os aplicativos
                                                                        derização 3D,       (escritos em Java) do Android, como
                                                                        fontes bitmap       cliente de email, navegador web,
                                                                        e vetorizadas       contatos e outros. Isso significa que,
                                                                        e funções de        para desenvolver programas para
            Figura 3 Seleção do novo site.                              acesso ao banco     a plataforma Android, vamos criar
                                                                                            os aplicativos em Java na máquina
                                                                                            virtual Dalvik.
              Exemplo 1: Código do projeto HelloAndroid
              01   package com.android.hello;                                               Instalação e
              02
              03   import android.app.Activity;                                             configuração
              04   import android.os.Bundle;                                                Para instalarmos o Android, pri-
              05   import android.widget.TextView;
                                                                                            meiramente devemos efetuar o
              06
              07   public class HelloAndroid extends Activity {                             download do ambiente de de-
              08     /** Called when the activity is first created. */                      senvolvimento ( Android SDK )
              09     @Override                                                              em [1] . Antes de baixar o ar-
              10     public void onCreate(Bundle icicle) {
              11       super.onCreate(icicle);                                              quivo, é necessário clicar em
              12       TextView tv = new TextView(this);                                    “ I agree to the terms of the SDK
              13       tv.setText(“Ola Mundo - Linux Magazine!”);                           License ” para aceitar os termos
              14       setContentView(tv);                                                  da licença do SDK. Logo em se-
              15       }
              16   }                                                                        guida, deve-se selecionar o pa-
                                                                                            cote correspondente ao sistema


    74                                                                                                    http://www.linuxmagazine.com.br
Google Android | PROGRAMAÇÃO




                                                                               Olá, mundo
                                                                               Vamos agora criar nosso primeiro
                                                                               aplicativo para o Android usando
                                                                               o Eclipse. Para isso, selecione a
                                                                               opção File no menu principal,
                                                                               depois a opção New e, logo após
                                                                               clique em Project . Em seguida,
                                                                               selecione o item Android Project
                                                                               e clique no botão Next.
                                                                                  Na janela de diálogo do proje-
                                                                               to, digite os nomes do projeto, do
                                                                               pacote, da classe e da aplicação.
                                                                               Selecione as opções Create new
                                                                               project in workspace e Use default
                                                                               location, clicando no botão Finish,
                                                                               ao final. Se tudo estiver funcio-
                                                                               nando corretamente, um código
                                                                               semelhante ao do exemplo 1 será
 Figura 4 Preparação para execução do novo programa.                           criado no projeto HelloAndroid,
                                                                               exceto pelas linhas 5, 12, 13 e 14,
                                                                               que devem ser acrescentadas ou
operacional (Windows, Mac OS            que se abre ( figura 2 ), digite o     editadas para que o resultado seja
X ou Linux).                            endereço https://dl-ssl.google.        semelhante a ele.
  Após descompactar o arquivo           com/android/eclipse/ para insta-          Para executar o programa no
baixado (formato ZIP ), é reco-         lação do plugin e digite o nome        emulador do Android, basta se-
mendável acrescentar a pasta to-        que desejar ( Android Plugin, na       lecionar o item Run | Run... do
ols/ criada no processo à variável      figura 2 ), confirmando , em se-       menu principal. Na janela de diá-
$PATH, acrescentando ao arquivo         guida, com o botão OK .                logo (figura 4), selecione o projeto
~/.bashrc a linha:                         Por último, basta selecionar o      para execução e clique nos botões
                                        novo site (figura 3) e clicar em Fi-   Apply e Run. Assim, o emulador
export PATH=${PATH}:/pasta/de/          nish, confirmando a instalação do
➥instalação/tools                       plugin (que não é assinado – não
                                        precisa entrar em pânico) com
                                        Install All . Ao concluir a instala-
Plugin ADT                              ção, reinicie o Eclipse.
O plugin Eclipse para desenvolvi-          Após a reinicialização do Eclip-
mento de aplicativos para o Android     se, atualize ou configure a lo-         Figura 5 Resultado da execução do
no IDE Eclipse se chama Android         calização do Android SDK no                     programa de teste.
Development Tools, ou ADT. Na           plugin ADT do Eclipse. Selecio-
página do Android é mencionada          ne o item “Windows” no menu
a compatibilidade com as versões        principal e, ao abrir a janela de
3.2 e 3.3 do IDE. Para iniciar a ins-   preferências, selecione a opção
talação do ADT, inicie o Eclipse        Android no painel da esquerda,
e selecione o item Help | Software      informando a localização do An-
Updates | Find and Install... no        droid SDK com o botão Browse
menu principal.                         no campo SDK Location . Para
   Na janela de diálogo Install/        finalizar, pressione o botão Ap-
Update , selecione o item Search        ply e, depois, OK .
for new features to install e pres-        Se tudo aconteceu como mostra-
sione o botão Next . Na janela de       do até esse ponto, o plugin do ADT
diálogo Install , clique no botão       já estará instalado e configurado      Figura 6 Layout do programa de
New Remote Site... e, na janela         corretamente no Eclipse.                        conversão de câmbio.



Linux Magazine #43 | Junho de 2008                                                                                    75
PROGRAMAÇÃO | Google Android




            será iniciado, nos permitindo ver       mado activityCreator.py. O comando     Partindo do princípio de que o
            esse primeiro programa em ação          adequado, nesse caso, seria:           Apache Ant esteja instalado corre-
            no Android (figura 5).                                                         tamente, basta executar o coman-
                                                    activityCreator.py --out               do ant para compilar o programa
            Sem Eclipse?                            ➥HelloAndroid com.android.hello.       HelloAndroid.
            Também é possível escrever apli-        ➥HelloAndroid
            cativos para o Android sem usar o
            Eclipse, recorrendo apenas à linha de      Em seguida, acesse a pasta Hello-   Layout
            comando. Para isso, o Android SDK       Android/ (criada pelo script), onde    No mundo dos aplicativos embar-
            traz um script escrito em Python cha-   se encontra-se o arquivo build.xml.    cados, a aparência tem uma im-
                                                                                               portância ainda maior sobre
                                                                                               a usabilidade. O DroidDraw
                                                                                               é um editor de layout escri-
              Exemplo 2: Aplicativo de câmbio                                                  to em Java que possibilita a
              package com.android.lm;                                                          montagem de interfaces grá-
                                                                                               ficas e sua gravação em um
              import   android.app.Activity;                                                   arquivo XML para posterior
              import   android.os.Bundle;
              import   android.view.View;                                                      utilização no aplicativo. Essa
              import   android.view.View.OnClickListener;                                      ferramenta é muito útil para
              import   android.widget.Button;                                                  acelerar o desenvolvimento
              import   android.widget.RadioButton;                                             de aplicativos na plataforma
              import   android.widget.TextView;
                                                                                               Android.
              public class HelloLM extends Activity {                                              O DroidDraw pode ser usa-
                   TextView dolar;                                                             do online[2] ou baixado a par-
                   TextView real;
                   RadioButton dtor;
                                                                                               tir do site [3]. Para instalá-lo,
                   RadioButton rtod;                                                           basta descompactar o arquivo
                   Button convert;                                                             baixado, entrar no diretório
                                                                                               criado por ele e executar o
                   /** Called when the activity is first created. */
                   @Override                                                                   script droiddraw.sh.
                   public void onCreate(Bundle icicle) {
                      super.onCreate(icicle);
                      setContentView(R.layout.main);
                      dolar = (TextView)this.findViewById(R.id.dolar);
                                                                                                Câmbio
                      real = (TextView)this.findViewById(R.id.real);                            Para explorar o DroidDraw,
                      dtor = (RadioButton)this.findViewById(R.id.dtor);                         vamos criar um aplicativo
                      dtor.setChecked(true);                                                    para conversão de valores em
                      rtod = (RadioButton)this.findViewById(R.id.rtod);
                                                                                                reais para dólares.
                        convert = (Button)this.findViewById(R.id.convert);                         Após iniciar o programa, o
                        convert.setOnClickListener(new Button.OnClickListener() {               primeiro passo é selecionar a
                        public void onClick(View v) {                                           aba Layouts e, em seguida, o
                           if (dtor.isChecked()) {
                              convertDolarToReal();                                             componente LinearLayout.
                           }                                                                    Na aba Properties, altere a
                           if (rtod.isChecked()) {                                              dimensão para 200 pixels de
                              convertRealToDolar();
                                                                                                largura e 130 de altura, pres-
                           }
                        }});                                                                    sionando o botão Apply logo
                   }                                                                            em seguida. Depois, na aba
                        protected void convertDolarToReal() {                                   Widgets, arraste dois objetos
                           double val = Double.parseDouble(dolar.getText().toString());
                           real.setText(Double.toString(val*1.8));                              TextView, dois EditText, dois
                        }                                                                       RadioButton e um Button para
                        protected void convertRealToDolar() {                                   a área da interface e crie um
                           double val = Double.parseDouble(real.getText().toString());          layout como na figura 6.
                           dolar.setText(Double.toString(val/1.8));
                        }                                                                          Novamente na aba Pro-
                                                                                                perties, altere o campo id


    76                                                                                                   http://www.linuxmagazine.com.br
Google Android | PROGRAMAÇÃO




do primeiro objeto EditText para
@+id/dolar” , o do segundo Edit-        Exemplo 3: Shell do Android
Text para @+id/real , o do primei-      $ adb shell
ro RadioButton para @+id/dor , o        # ls -l
do segundo RadioButton para             drw-rw-rw- root      root       2008-04-14 06:29 cache
                                        drwxr-xr-x root      root       2008-04-14 06:29 d
@+id/rtod e o do Button para
                                        -rwxr-xr-x root      root 91952 1970-01-01 00:00 init
@+id/convert . Depois disso, bas-       drwxr-xr-x root      root       1970-01-01 00:00 etc
ta clicar sobre o botão Generate        drwxr-xr-x root      root       1970-01-01 00:00 var
para criar o arquivo do layout na       drwxrwx--x system system        2007-11-11 20:59 data
                                        drwxr-xr-x root      root       2008-02-29 01:19 system
janela Output.                          drwxr-xr-x root      root       1970-01-01 00:00 sys
   Com o layout gerado, crie uma        drwxrwxrwt root      root       2008-04-14 06:49 tmp
nova aplicação (com o Eclipse ou        dr-xr-xr-x root      root       1970-01-01 00:00 proc
pelo script) e substitua o conteúdo     drwxr-xr-x root      root       1970-01-01 00:00 sbin
                                        drwx–– root     root        1970-01-01 00:00 root
do arquivo res/layout/main.xml          drwxr-xr-x root      root       2008-04-14 06:29 dev
pela estrutura XML gerada pelo
DroidDraw. Depois, na pasta src,
localize o arquivo nome-da-classe.    Depuração                               CD que já traz o SDK instalado,
java e insira o código do exemplo     O ADB, ou Android Debug Brid-           assim como o IDE Eclipse e o
2 no arquivo fonte. Para visualizar   ge, é um gerenciador de depura-         aplicativo DroidDraw. A distri-
o aplicativo em funcionamento,        ção poderoso. Este artigo ficaria       buição oferece ainda a opção
basta executar o programa com         muito extenso caso fossem men-          de instalação no disco rígido ou
a opção Run, como mencionado          cionadas todas as opções e recur-       em um pendrive. O VD_Android
anteriormente.                        sos disponíveis na ferramenta; por      é baseado no Debian Lenny e
                                      isso, serão abordadas apenas suas       utiliza como ambiente desktop
                                      funções principais.                     padrão o Xfce4.
Emulador                                 Para listar os emuladores disponí-
O Android SDK traz ainda um           veis, usa-se o comando adb devices.
prático emulador. Com ele, o          A instalação de aplicativos também      Conclusão
desenvolvedor tem à disposição        é possível e usa-se o comando adb       Para quem deseja ter contato com
um aparelho celular emulado,          install /caminho/do/aplicativo.apk.     o Android, este artigo é um bom
capaz de executar todos os apli-      A desinstalação é igualmente fá-        ponto de partida. A plataforma
cativos desenvolvidos para a pla-     cil, pois requer apenas o comando       Android é poderosa e, como se vê,
taforma. Isso é ótimo para rea-       adb shell rm data/app/aplicativo.       fácil de usar. Esperamos que ele
lizar testes sem um dispositivo       apk. Como esse último comando           ajude a iniciar uma longa cami-
físico. Todas as funções de um        leva a crer, é possível acessar uma     nhada de aprendizado. ■
celular estão disponíveis, exceto     shell do Android com o comando
aquelas relacionadas a chamadas       adb shell ( exemplo 3 ).
telefônicas.                             O Android tem, embutido, um
                                                                                Mais informações
   Para executar o emulador do        banco de dados SQLite, que se
Android, basta executar o comando     pode acessar, a partir da shell, com      [1] Download da SDK do
emulator, que se encontra na pasta    o comando:                                    Android: http://code.
tools/ do SDK. Por padrão, ele                                                      google.com/intl/pt-BR/
                                                                                    android/download.html
traz quatro “temas”, chamados de      # sqlite3 /data/data/com.
skins. O que muda entre os skins é    ➥example.                                 [2] DroidDraw online: http://
apenas a resolução da tela. Há as      google.rss.rssexample/databases/             www.droiddraw.org/
opções QVGA (320x240) e HVGA          ➥ rssitems.db
                                                                                [3] Download do DroidDraw:
(480x320), nas orientações paisa-     Ao vivo                                       http://droiddraw.
gem (sufixo L) e retrato (sufixo                                                    googlecode.com/files/
P). Para usar a resolução HVGA        Quem desejar poupar esforços                  droiddraw-r1b8.tgz
em formato paisagem, basta ini-       de instalação do Android SDK              [4] VD_Android: http://
ciar o emulador com o parâmetro       pode recorrer ao VD_Android [4],              tinyurl.com/6z2c3v
-skin HVGA-L.                         uma distribuição Linux em Live


Linux Magazine #43 | Junho de 2008                                                                                   77

Programe seu androide

  • 1.
    Seu primeiro aplicativopara Android Programe seu andróide PROGRAMAÇÃO A plataforma Android, do Google, vai equipar com tecnologia de ponta diversos aparelhos celulares. Veja como é fácil começar a programar aplicativos nela. por Alessandro de Oliveira Faria Jean Scheijen – www.sxc.hu O Android é uma plata- to do Android provê ferramentas e Em outras palavras, trata-se de forma de código aberto chamadas via APIs para o desen- um pacote com programas para para dispositivos portáteis volvimento de aplicativos baseados celulares, já com um sistema criado pelo Google em parceria na linguagem Java. operacional, middleware, aplica- com a Open Handset Alliance (OHA). Trata-se de uma aliança para o telefone celular aberto, composta por mais de 30 empre- sas do mercado de TI que apóiam soluções de código-fonte aberto, como Samsung, Intel, Motorola, Qualcomm e Telefónica. A OHA pretende repetir a estratégia da IBM com a fabricação do PC, composto por partes facilmente adquiridas no mercado. Essa plataforma funciona como um sistema operacional como os já existentes Symbian e Windows® Mobile, com a diferença de ser baseado em Código Aberto. Com isso, qualquer desenvolvedor pode criar aplicativos para a plataforma Android. O kit de desenvolvimen- Figura 1 Camadas da plataforma Android. Linux Magazine #43 | Junho de 2008 73
  • 2.
    PROGRAMAÇÃO | GoogleAndroid Arquitetura SQLite. Todos esses recursos estão A arquitetura do Android é di- disponíveis no framework para o vidida em cinco camadas, orga- desenvolvimento de aplicativos. nizadas como mostra a figura 1 : A pequena camada do ambien- kernel Linux, bibliotecas, am- te de execução ( Android Runti- biente de execução, framework me , na figura 1 ) é uma instância Figura 2 Especificação do site para e aplicativo. da máquina virtual Dalvik cria- o plugin A camada do kernel Linux é da para cada aplicação executa- composta pelo kernel 2.6 e se da no Android. A Dalvik é uma tivos e interface de usuário. Tais responsabiliza pelos serviços, se- máquina virtual com melhor recursos permitirão que o Goo- gurança, gerenciamento de me- desempenho, maior integração gle e outras empresas ofereçam mória e processos, rede e drivers. com a nova geração de hardware recursos mais ricos aos usuários Essa camada também é respon- e projetada para executar várias que se encontram distantes de um sável pela abstração do hardware máquinas virtuais paralelamen- computador de mesa. do dispositivo. te. Além disso, é otimizada para Os principais recursos dessa A segunda camada, a de biblio- consumo mínimo de memória, plataforma móvel são a máquina tecas, carrega consigo um conjunto bateria e CPU. virtual otimizada, o navegador de bibliotecas C/C++ utilizadas pelo Sobre essas camadas, localiza-se integrado, a biblioteca 2D e 3D, sistema. Estão incluídas nesse con- a camada do framework (Applica- o banco SQLite e o plugin para o junto a biblioteca C padrão (Libc) tion Framework, na figura 1). Nela, Eclipse, chamado ADT. e também aquelas das áreas de encontramos todas as APIs e os re- multimídia, vi- cursos utilizados pelos aplicativos, sualização de ca- com classes visuais como botões e madas 2D e 3D, views, provedor de conteúdo (tro- funções para na- ca de recursos entre aplicativos) vegadores web, e gerenciadores de recursos, de funções para notificação e de pacotes. gráficos, funções Acima de todas as outras cama- de aceleração de das está a de aplicativos, na qual hardware, ren- se encontram todos os aplicativos derização 3D, (escritos em Java) do Android, como fontes bitmap cliente de email, navegador web, e vetorizadas contatos e outros. Isso significa que, e funções de para desenvolver programas para Figura 3 Seleção do novo site. acesso ao banco a plataforma Android, vamos criar os aplicativos em Java na máquina virtual Dalvik. Exemplo 1: Código do projeto HelloAndroid 01 package com.android.hello; Instalação e 02 03 import android.app.Activity; configuração 04 import android.os.Bundle; Para instalarmos o Android, pri- 05 import android.widget.TextView; meiramente devemos efetuar o 06 07 public class HelloAndroid extends Activity { download do ambiente de de- 08 /** Called when the activity is first created. */ senvolvimento ( Android SDK ) 09 @Override em [1] . Antes de baixar o ar- 10 public void onCreate(Bundle icicle) { 11 super.onCreate(icicle); quivo, é necessário clicar em 12 TextView tv = new TextView(this); “ I agree to the terms of the SDK 13 tv.setText(“Ola Mundo - Linux Magazine!”); License ” para aceitar os termos 14 setContentView(tv); da licença do SDK. Logo em se- 15 } 16 } guida, deve-se selecionar o pa- cote correspondente ao sistema 74 http://www.linuxmagazine.com.br
  • 3.
    Google Android |PROGRAMAÇÃO Olá, mundo Vamos agora criar nosso primeiro aplicativo para o Android usando o Eclipse. Para isso, selecione a opção File no menu principal, depois a opção New e, logo após clique em Project . Em seguida, selecione o item Android Project e clique no botão Next. Na janela de diálogo do proje- to, digite os nomes do projeto, do pacote, da classe e da aplicação. Selecione as opções Create new project in workspace e Use default location, clicando no botão Finish, ao final. Se tudo estiver funcio- nando corretamente, um código semelhante ao do exemplo 1 será Figura 4 Preparação para execução do novo programa. criado no projeto HelloAndroid, exceto pelas linhas 5, 12, 13 e 14, que devem ser acrescentadas ou operacional (Windows, Mac OS que se abre ( figura 2 ), digite o editadas para que o resultado seja X ou Linux). endereço https://dl-ssl.google. semelhante a ele. Após descompactar o arquivo com/android/eclipse/ para insta- Para executar o programa no baixado (formato ZIP ), é reco- lação do plugin e digite o nome emulador do Android, basta se- mendável acrescentar a pasta to- que desejar ( Android Plugin, na lecionar o item Run | Run... do ols/ criada no processo à variável figura 2 ), confirmando , em se- menu principal. Na janela de diá- $PATH, acrescentando ao arquivo guida, com o botão OK . logo (figura 4), selecione o projeto ~/.bashrc a linha: Por último, basta selecionar o para execução e clique nos botões novo site (figura 3) e clicar em Fi- Apply e Run. Assim, o emulador export PATH=${PATH}:/pasta/de/ nish, confirmando a instalação do ➥instalação/tools plugin (que não é assinado – não precisa entrar em pânico) com Install All . Ao concluir a instala- Plugin ADT ção, reinicie o Eclipse. O plugin Eclipse para desenvolvi- Após a reinicialização do Eclip- mento de aplicativos para o Android se, atualize ou configure a lo- Figura 5 Resultado da execução do no IDE Eclipse se chama Android calização do Android SDK no programa de teste. Development Tools, ou ADT. Na plugin ADT do Eclipse. Selecio- página do Android é mencionada ne o item “Windows” no menu a compatibilidade com as versões principal e, ao abrir a janela de 3.2 e 3.3 do IDE. Para iniciar a ins- preferências, selecione a opção talação do ADT, inicie o Eclipse Android no painel da esquerda, e selecione o item Help | Software informando a localização do An- Updates | Find and Install... no droid SDK com o botão Browse menu principal. no campo SDK Location . Para Na janela de diálogo Install/ finalizar, pressione o botão Ap- Update , selecione o item Search ply e, depois, OK . for new features to install e pres- Se tudo aconteceu como mostra- sione o botão Next . Na janela de do até esse ponto, o plugin do ADT diálogo Install , clique no botão já estará instalado e configurado Figura 6 Layout do programa de New Remote Site... e, na janela corretamente no Eclipse. conversão de câmbio. Linux Magazine #43 | Junho de 2008 75
  • 4.
    PROGRAMAÇÃO | GoogleAndroid será iniciado, nos permitindo ver mado activityCreator.py. O comando Partindo do princípio de que o esse primeiro programa em ação adequado, nesse caso, seria: Apache Ant esteja instalado corre- no Android (figura 5). tamente, basta executar o coman- activityCreator.py --out do ant para compilar o programa Sem Eclipse? ➥HelloAndroid com.android.hello. HelloAndroid. Também é possível escrever apli- ➥HelloAndroid cativos para o Android sem usar o Eclipse, recorrendo apenas à linha de Em seguida, acesse a pasta Hello- Layout comando. Para isso, o Android SDK Android/ (criada pelo script), onde No mundo dos aplicativos embar- traz um script escrito em Python cha- se encontra-se o arquivo build.xml. cados, a aparência tem uma im- portância ainda maior sobre a usabilidade. O DroidDraw é um editor de layout escri- Exemplo 2: Aplicativo de câmbio to em Java que possibilita a package com.android.lm; montagem de interfaces grá- ficas e sua gravação em um import android.app.Activity; arquivo XML para posterior import android.os.Bundle; import android.view.View; utilização no aplicativo. Essa import android.view.View.OnClickListener; ferramenta é muito útil para import android.widget.Button; acelerar o desenvolvimento import android.widget.RadioButton; de aplicativos na plataforma import android.widget.TextView; Android. public class HelloLM extends Activity { O DroidDraw pode ser usa- TextView dolar; do online[2] ou baixado a par- TextView real; RadioButton dtor; tir do site [3]. Para instalá-lo, RadioButton rtod; basta descompactar o arquivo Button convert; baixado, entrar no diretório criado por ele e executar o /** Called when the activity is first created. */ @Override script droiddraw.sh. public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); dolar = (TextView)this.findViewById(R.id.dolar); Câmbio real = (TextView)this.findViewById(R.id.real); Para explorar o DroidDraw, dtor = (RadioButton)this.findViewById(R.id.dtor); vamos criar um aplicativo dtor.setChecked(true); para conversão de valores em rtod = (RadioButton)this.findViewById(R.id.rtod); reais para dólares. convert = (Button)this.findViewById(R.id.convert); Após iniciar o programa, o convert.setOnClickListener(new Button.OnClickListener() { primeiro passo é selecionar a public void onClick(View v) { aba Layouts e, em seguida, o if (dtor.isChecked()) { convertDolarToReal(); componente LinearLayout. } Na aba Properties, altere a if (rtod.isChecked()) { dimensão para 200 pixels de convertRealToDolar(); largura e 130 de altura, pres- } }}); sionando o botão Apply logo } em seguida. Depois, na aba protected void convertDolarToReal() { Widgets, arraste dois objetos double val = Double.parseDouble(dolar.getText().toString()); real.setText(Double.toString(val*1.8)); TextView, dois EditText, dois } RadioButton e um Button para protected void convertRealToDolar() { a área da interface e crie um double val = Double.parseDouble(real.getText().toString()); layout como na figura 6. dolar.setText(Double.toString(val/1.8)); } Novamente na aba Pro- perties, altere o campo id 76 http://www.linuxmagazine.com.br
  • 5.
    Google Android |PROGRAMAÇÃO do primeiro objeto EditText para @+id/dolar” , o do segundo Edit- Exemplo 3: Shell do Android Text para @+id/real , o do primei- $ adb shell ro RadioButton para @+id/dor , o # ls -l do segundo RadioButton para drw-rw-rw- root root 2008-04-14 06:29 cache drwxr-xr-x root root 2008-04-14 06:29 d @+id/rtod e o do Button para -rwxr-xr-x root root 91952 1970-01-01 00:00 init @+id/convert . Depois disso, bas- drwxr-xr-x root root 1970-01-01 00:00 etc ta clicar sobre o botão Generate drwxr-xr-x root root 1970-01-01 00:00 var para criar o arquivo do layout na drwxrwx--x system system 2007-11-11 20:59 data drwxr-xr-x root root 2008-02-29 01:19 system janela Output. drwxr-xr-x root root 1970-01-01 00:00 sys Com o layout gerado, crie uma drwxrwxrwt root root 2008-04-14 06:49 tmp nova aplicação (com o Eclipse ou dr-xr-xr-x root root 1970-01-01 00:00 proc pelo script) e substitua o conteúdo drwxr-xr-x root root 1970-01-01 00:00 sbin drwx–– root root 1970-01-01 00:00 root do arquivo res/layout/main.xml drwxr-xr-x root root 2008-04-14 06:29 dev pela estrutura XML gerada pelo DroidDraw. Depois, na pasta src, localize o arquivo nome-da-classe. Depuração CD que já traz o SDK instalado, java e insira o código do exemplo O ADB, ou Android Debug Brid- assim como o IDE Eclipse e o 2 no arquivo fonte. Para visualizar ge, é um gerenciador de depura- aplicativo DroidDraw. A distri- o aplicativo em funcionamento, ção poderoso. Este artigo ficaria buição oferece ainda a opção basta executar o programa com muito extenso caso fossem men- de instalação no disco rígido ou a opção Run, como mencionado cionadas todas as opções e recur- em um pendrive. O VD_Android anteriormente. sos disponíveis na ferramenta; por é baseado no Debian Lenny e isso, serão abordadas apenas suas utiliza como ambiente desktop funções principais. padrão o Xfce4. Emulador Para listar os emuladores disponí- O Android SDK traz ainda um veis, usa-se o comando adb devices. prático emulador. Com ele, o A instalação de aplicativos também Conclusão desenvolvedor tem à disposição é possível e usa-se o comando adb Para quem deseja ter contato com um aparelho celular emulado, install /caminho/do/aplicativo.apk. o Android, este artigo é um bom capaz de executar todos os apli- A desinstalação é igualmente fá- ponto de partida. A plataforma cativos desenvolvidos para a pla- cil, pois requer apenas o comando Android é poderosa e, como se vê, taforma. Isso é ótimo para rea- adb shell rm data/app/aplicativo. fácil de usar. Esperamos que ele lizar testes sem um dispositivo apk. Como esse último comando ajude a iniciar uma longa cami- físico. Todas as funções de um leva a crer, é possível acessar uma nhada de aprendizado. ■ celular estão disponíveis, exceto shell do Android com o comando aquelas relacionadas a chamadas adb shell ( exemplo 3 ). telefônicas. O Android tem, embutido, um Mais informações Para executar o emulador do banco de dados SQLite, que se Android, basta executar o comando pode acessar, a partir da shell, com [1] Download da SDK do emulator, que se encontra na pasta o comando: Android: http://code. tools/ do SDK. Por padrão, ele google.com/intl/pt-BR/ android/download.html traz quatro “temas”, chamados de # sqlite3 /data/data/com. skins. O que muda entre os skins é ➥example. [2] DroidDraw online: http:// apenas a resolução da tela. Há as google.rss.rssexample/databases/ www.droiddraw.org/ opções QVGA (320x240) e HVGA ➥ rssitems.db [3] Download do DroidDraw: (480x320), nas orientações paisa- Ao vivo http://droiddraw. gem (sufixo L) e retrato (sufixo googlecode.com/files/ P). Para usar a resolução HVGA Quem desejar poupar esforços droiddraw-r1b8.tgz em formato paisagem, basta ini- de instalação do Android SDK [4] VD_Android: http:// ciar o emulador com o parâmetro pode recorrer ao VD_Android [4], tinyurl.com/6z2c3v -skin HVGA-L. uma distribuição Linux em Live Linux Magazine #43 | Junho de 2008 77