Escolar Documentos
Profissional Documentos
Cultura Documentos
Programando Passo-a-Passo
Desenvolvida no Inatel Competence Center ICC Estagirio: Pedro Henrique Fialho Santos
Fontes: Portal Android (principal forum brasileiro de Android. Exemplo retirado de l): http://forum.portalandroid.org/ Wikipedia: http://pt.wikipedia.org/wiki/Android http://pt.wikipedia.org/wiki/Dalvik_virtual_machine
Rixargolo: http://www.rixargolo.com/2008/03/04/o-que-android/
O que Android?
Android um sistema operacional baseado em kernel Linux. Ele foi inicialmente desenvolvido pela Google, e permite os desenvolvedores escreverem software na linguagem de programao Java controlando o dispositivo mveis via bibliotecas desenvolvidas pela Google. Exemplos de celulares com Android: Samsung Galaxy, HTC Hero, HTC Magic, HTC G1, Motorola Blur/Dext, Motorola Milestone, Sony Xperia 10 Acer Liquid.
IDE
Para ajudar os desenvolvedores na criao de aplicativos para o Android, a Google disponibilizou um plugin para a IDE Eclipse que adiciona ferramentas para criar a depurar os cdigos com facilidade.
Windows XP ou Vista Mac OS X 10.4.8 ou posterior (x86 apenas) Linux (testado no Ubuntu 9.10)
Faa o download do Eclipse aqui: http://www.eclipse.org/downloads/ Faa o download do SDK Android aqui: http://developer.android.com/sdk/index.html Faa o download do ADT aqui: http://developer.android.com/sdk/eclipseadt.html#troubleshooting SUGESTO: Crie 1 pasta chamada Android, e dentro dela coloque o SDK e o ADT. OBS: No descompacte o ADT
Instalando o SDK
Abra a pasta do SDK que foi feito o download e execute o SDK Setup.exe Poder ocorrer um erro, ento selecione a aba Settings no lado esquerdo Selecione o checkbox escrito Force https Clique em Save & Apply V na aba Avaible Packages, e clique no +, para ver quais esto disponveis. 6. Selecione SOMENTE o SDK Plataform Android mais novo. (Ex.: SDK Plataform Android 2.0.1, API 6, revision 1). 7. Clique em Install selected, e espere uns 30 minutos para ocorrer a instalao. 1. 2. 3. 4. 5.
7. 8.
Criando 1 AVD
1. 2. 3. 4. Clique no cone de celular que apareceu no Eclipse Clique em New Em Name, d 1 nome ao AVD (Ex.: Inatel AVD) Em Target, selecione o SDK instalado, e depois clique em Create AVD
3. Precione Finish 4. Clique em cima do Projeto criado, e clique em Run As > Run Configurations 5. Selecione Android Application, clique com o boto direto, e depois em New 6. Selecione o projeto, e depois Launch, e selecione a classe. 7. V no projeto, e aperte F11 (Para executar) e depois selecione Android Application. 8. Espere bastante, at a tela de seu projeto aparecer
Vamos fazer uma modificao na nossa aplicao. Abra o arquivo main.xml (que est no pacote res/layout). Observe que ele possui um TextView certo? Vamos colocar mais duas TextViews, a primeira TextView, no atributo android:text ter o ttulo Primeira frase, o segundo TextView ter o ttulo Segunda Frase e assim sucessivamente:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Primeira Frase." /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Segunda Frase" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Terceira Frase!" /> </LinearLayout>
Bom, vamos a explicao do cdigo acima. Observem que possuo uma TextView com o ttulo Digite o primeiro nmero. Logo abaixo dela , eu possuo uma widget do tipo EditText, que exibe um campo onde vou digitar o nmero. Essa widget possui uma propriedade chamada android:id, que serve para dar nome ao componente, ou seja, funciona como um identificador daquele componente. O nome de um widget, deve estar nesse formato: @+<nome>/<nome> Se observamos, o valor desse atributo : @+campo/num1. como se campo representasse um grupo e num1 representasse o nome do componente. Abaixo dessa widget, temos outra do tipo TextView com o ttulo Digite o segundo nmero. Depois temos um outro widget do tipo EditText, cujo nome : @+campo/num2. Abaixo dessa widget, temos um terceiro TextView com o ttulo Resultado. Depois temos um outro widget do tipo EditText, cujo nome : @+campo/res. Por ltimo, temos uma widget do tipo Button, cuja finalidade mostrar um boto para podermos clic-lo. Ele possui um ttulo com o valor Mostrar e seu nome : @+botao/btmostrar. Beleza, agora vamos abrir o cdigo do arquivo AppSoma.java, para acessar via cdigo Java, os componentes que adicionamos via XML. Siga os passos aqui descritos para voc como esse processo feito. Aps a linha
import android.os.Bundle;
Digite:
import android.widget.*; import android.view.*;
Antes da linha:
@Override
Digite:
EditText ednum1,ednum2,edres;
Agora vamos a explicao do cdigo acima. Como voc pode ver, os widgets podem ser usados no nosso cdigo Java. Se no cdigo XML eu possuir um widget do tipo EditText, para acessar esse componente pelo Java, preciso fazer uso da classe EditText. Cada widget no XML possui o seu respectivo em classe Java, logo, se possui um widget Button, para acessa-lo devo fazer uso da classe Button e assim vai. Agora, aps a linha:
setContentView(R.layout.main);
Faz referncia ao primeiro EditText, atravs do mtodo findViewById com o parmetro R.campo.num1. Ah, se lembra o nome da primeira EditText que est no cdigo XML? Ela se chama @+campo/num1. Observe que para fazer referncia ao EditText pelo mtodo findViewById eu passei o parmetro R.campo.num1. J na segunda linha, para fazer a referncia segunda EditText, cujo nome @+campo/num2, pelo mtodo findViewById, passei o parmetro R.campo.num2. Como voc pode ver, estou fazendo uso da classe R, que funciona como interface entre o cdigo Java e o arquivo XML. O procedimento o mesmo tanto para o terceiro EditText e o Button. Agora iremos adicionar um evento Click, no nosso Button, pois quando eu clicar no boto, ele dever mostrar a soma dos nmeros. Ento, logo aps a linha:
Button btMostrar = (Button) findViewById(R.botao.btmostrar);
Digite:
btMostrar.setOnClickListener(new View.OnClickListener(){ public void onClick(View arg0) { double num1 = Double.parseDouble(ednum1.getText().toString()); double num2 = Double.parseDouble(ednum2.getText().toString()); double res = num1 + num2; edres.setText(String.valueOf(res)); } });
Toda vez que eu clicar no boto, ele ir mostrar o resultado na terceira EditText referente ao resultado da soma. O mtodo setOnClickLisneter serve para definir um evento de Click a um componente. Como parmetro, criamos uma instncia de OnClickListener e dentro dessa instncia existe o mtodo chamado onClick, que ser disparado toda vez que o boto for clicado. A linha:
double num1 = Double.parseDouble(ednum1.getText().toString());
Cria uma varivel chamada num1 e atribui a ela o valor que est contido em num1. Eu fao uso do mtodo parseDouble da classe Double pois o contedo uma String. Observem que chamo o mtodo getText de ednum1 para retornar o contedo. Diferente de muitos mtodos de retorno de String, esse mtodo getText no retorna uma String, mais sim um tipo chamado Editable. Por isso, chamei o mtodo toString de getText para que me retornasse uma string. A descrio da prxima linha e a mesma. A linha:
edres.setText(String.valueOf(res));
valores. Isso possvel chamado o mtodo setText, como o resultado est num tipo double e setText aceita somente parmetros do tipo String e Editable, fiz a converso desse valor atravs do mtodo valueOf da classe String. O Resultado ser esse:
DICAS:
1. NUNCA feche a aplicao que voc executou no Android. O Android um SO (Sistema Operacional), e por isso toda vez que iniciado, tem a necessitade de carregar suas configuraes (instncias), o que leva um certo tempo (uns 25-30 segundos). Por isso, toda vez que voc tiver feito alguma alterao no seu projeto, simplesmente execute-o em cima do outro projeto, gastando assim muito menos tempo. 2. Aprenda a usar alguns atalhos do Eclipse, como Ctrl + Shift + F (seve para indentrar seu cdigo), ou Ctrl + Shift + O (serve para organizar seus imports adicionar os necessrios, ou remover os que no so).
Concluso
Nesta apostila aprendemos a programar o bsico do Android. Vimos um pouco sobre a plataforma Android, aprendemos a instalar o eclipse e os plugins necessrios para o funcionamento do Android, incluindo o SDK. Aprendemos a construir uma aplicao Android bsica e depois conhecemos os componentes (widgets) que constituem uma aplicao Android para a construo de aplicaes mais interessantes. Anexo 01 - Um exemplo de apliacao, de como trocar de layouts e mostrar mensagens em uma aplicao Android, com um exemplo prtico de uma aplicao de cadastro em uma agenda. Anexo 02 Um exemplo de aplicao, como calcular seu IMC, usando troca de layouts (para trocar de layout neste exemplo, clique na imagem da balana), e um exemplo de Timer Task (servindo como uma thread), para trocar imagens. Espero que esse material lhe tenha sido til. Abraos, Pedro Henrique Fialho Santos Estagirio do Inatel Competence Center - ICC