• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Programe seu androide
 

Programe seu androide

on

  • 393 views

 

Statistics

Views

Total Views
393
Views on SlideShare
393
Embed Views
0

Actions

Likes
1
Downloads
16
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Programe seu androide Programe seu androide Document Transcript

    • Seu primeiro aplicativo para AndroidPrograme 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.huO 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 sistemacriado pelo Google em parceria na linguagem Java. operacional, middleware, aplica-com a Open Handset Alliance(OHA). Trata-se de uma aliançapara o telefone celular aberto,composta por mais de 30 empre-sas do mercado de TI que apóiamsoluções de código-fonte aberto,como Samsung, Intel, Motorola,Qualcomm e Telefónica. A OHApretende repetir a estratégia daIBM com a fabricação do PC,composto por partes facilmenteadquiridas no mercado. Essa plataforma funciona comoum sistema operacional como osjá existentes Symbian e Windows®Mobile, com a diferença de serbaseado em Código Aberto. Comisso, qualquer desenvolvedor podecriar aplicativos para a plataformaAndroid. 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 ouoperacional (Windows, Mac OS que se abre ( figura 2 ), digite o editadas para que o resultado sejaX 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 nobaixado (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... dools/ 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 emuladorexport 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 dono 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 menua compatibilidade com as versões principal e, ao abrir a janela de3.2 e 3.3 do IDE. Para iniciar a ins- preferências, selecione a opçãotalaçã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 Browsemenu 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 ADTdiálogo Install , clique no botão já estará instalado e configurado Figura 6 Layout do programa deNew 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ÇÃOdo primeiro objeto EditText para@+id/dolar” , o do segundo Edit- Exemplo 3: Shell do AndroidText para @+id/real , o do primei- $ adb shellro RadioButton para @+id/dor , o # ls -ldo 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 etcta clicar sobre o botão Generate drwxr-xr-x root root 1970-01-01 00:00 varpara 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 systemjanela 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 tmpnova aplicação (com o Eclipse ou dr-xr-xr-x root root 1970-01-01 00:00 procpelo 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 rootdo arquivo res/layout/main.xml drwxr-xr-x root root 2008-04-14 06:29 devpela estrutura XML gerada peloDroidDraw. 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 o2 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çãobasta executar o programa com muito extenso caso fossem men- de instalação no disco rígido oua opção Run, como mencionado cionadas todas as opções e recur- em um pendrive. O VD_Androidanteriormente. 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ãodesenvolvedor tem à disposição é possível e usa-se o comando adb Para quem deseja ter contato comum aparelho celular emulado, install /caminho/do/aplicativo.apk. o Android, este artigo é um bomcapaz de executar todos os apli- A desinstalação é igualmente fá- ponto de partida. A plataformacativos 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 elelizar 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 comandoaquelas 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 seAndroid, basta executar o comando pode acessar, a partir da shell, com [1] Download da SDK doemulator, que se encontra na pasta o comando: Android: http://code.tools/ do SDK. Por padrão, ele google.com/intl/pt-BR/ android/download.htmltraz 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.tgzem 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 LiveLinux Magazine #43 | Junho de 2008 77