Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing
process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and
many iterations to get reader feedback, pivot until you have the right book and build traction once
you do.
1. Ol Android! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Criando um novo projeto no Android Studio . . . . . . . . . . . . . . . . . . . . . 1
1.2 Executando um aplicativo Android . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Personalizando o aplicativo OlaAndroid . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1. Ol Android!
Vamos criar uma aplicativo inicial, no estilo Ol Mundo! para Android. O objetivo apresentar
como criar um projeto Android e utilizar uma Activity para controlar a tela e os componentes
TextView, ImageView e Toast.
O aplicativo ter um texto Ol Android!!! e a figura do logo do Android, tambm ser adicionado
uma ao na figura que ao clicar nela aparece uma mensagem Ol!. No final, o aplicativo ficar
conforme a imagem a seguir:
Na tela Create New Project vamos configurar as informaes bsicas do projeto como:
Continuando, precisamos escolher qual o foco do projeto, o Android Studio permite desenvolver
para Celular e Tablet; Wear (como o relgio); TV; Auto (uso em automveis); e para o culos Google
Glass.
Escolha a opo Phone and Tablet, nesse exemplo ser utilizado a API 18: Android 4.3 (Jelly Bean),
mas o exemplo apresentado funciona em qualquer verso a partir da 2.3 do Android, ento se voc
tiver uma verso mais recente como Lollipop, pode desenvolver para essa verso.
Ol Android! 4
Vamos marcar apenas a opo Phone and Tablet e clique em Next para continuar.
Clicando em Next, vamos continuar a criao do projeto informando que ele deve criar uma
Activity, de modo geral uma Activity usada para realizar a aes de uma pgina.
Neste captulo abordaremos apenas o bsico para criar e iniciar um projeto, nos demais
captulos abordaremos todos os exemplos de Activity apresentado nessa lista.
Ol Android! 5
Marque a opo Black Activity (Activity em branco) e clique em Next para prosseguir. Essa opo
cria uma Activity e tela com um texto de exemplo, algo bem simples que a partir dele possvel
continuar a implementao de diversos aplicativos.
Agora, temos a opo de customizar os dados da Activity inicial que ser criada no projeto. As
informaes que temos so:
A Activity representa o nome da classe que ser criada para controlar as aes e atributos do layout
da tela; o Layout um arquivo XML que possui a estrutura e componentes da tela; o Ttulo o
nome da tela; e o Recurso do menu um arquivo XML com a estrutura do menu.
Ol Android! 6
Clique em Finish para terminar a criao do projeto. Aps a criao do projeto, o Android Studio
abre uma visualizao completa da estrutura do projeto, clicando do item Project que est na barra
do lado esquerdo.
Ol Android! 7
Na tela Android Virtual Device Manager (Gerenciador de dispositivos virtuais Android) temos
uma lista com todos os emuladores j criado, para criar um novo emulador clique no boto + Create
Virtual Device (Criar um dispositivo virtual) que est no lado inferior esquerdo da tela.
Para facilitar a criao de um novo emulador na tela Virtual Device Configuration (Configurao
virtual de dispositivos) temos as categorias do emulador como TV, Phone, Wear e Tablet, e para cada
Ol Android! 9
categoria temos a opo de usar as configuraes de um hardware existente, como por exemplo:
Nexus 5, Nexus One, etc, ou um formato de acordo com o tamanho da tela 5.4, 4, etc.
Para escolher a configurao do emulador, precisamos ter em mente qual ser o tipo de hardware
(tamanho, resoluo e densidade) que ser o foco do aplicativo, mais adiante no livro ser
apresentado o que significa cada uma dessas caractersticas e como criar um aplicativo que funcione
de modo agradvel em vrias resolues. Por agora voc pode criar um emulador com base no
hardware do Nexus 5 ou criar um emulador com base no seu celular.
No segundo passo precisamos informar qual a Imagem do Sistema que utilizaremos no emulador,
nesse caso a verso do Android.
Note que por exemplo para a verso Jelly Bean - API Level 18 temos vrias opes, basicamente o
que muda se usamos a verso Android ou verso do Google e o ABI que representa a arquitetura
do hardware, o recomendado usar uma verso com ABI x86 ou x84_64 se seu computador
suportar porque mais rpido que o armeabi-v7a, mas se o emulador no funcionar por falta de
compatibilidade do seu computador, ento crie o emulador usando a opo armeabi-v7a.
No exemplo ser usado o Jelly Bean - API Level 18, mas fique a vontade para escolher
uma verso que voc tenha no seu computador ou no seu celular.
Ol Android! 10
Se no encontrar a verso do Android na lista, marque a opo Show downloadable system images
que ser apresentado todas as imagens disponveis do Android.
Ol Android! 11
O nome do AVD; > Sugesto: coloque no nome o modelo, verso da API e resoluo, para ficar
mais fcil de identificar;
Dispositivo que ser simulado;
Verso do Android;
Escala e orientao;
Desempenho do emulador.
Ol Android! 12
Clique em Finish para terminar a criao do emulador e pode fechar a tela do Android Virtual
Device Manager.
Escolha o emulador que ser iniciado e clique em OK.
O emulador ser iniciado, desbloqueie a tela e o aplicativo OlaAndroid ser publicado e automati-
camente iniciado.
Ol Android! 13
Dica: O emulador demora um pouco para iniciar, ento enquanto estiver desenvolvendo
mantenha o emulador ligado.
Para editar e montar a tela do aplicativo, abra o arquivo app res layout activity_-
main.xml.
A edio de uma tela pode ser feita de modo design adicionando os componentes atravs da paleta
e configurando pelas propriedades.
Tambm podemos alterar o cdigo da tela editando o arquivo activity_main.xml no modo Text.
Ol Android! 15
Note que em ambos modos tambm temos mais opes para configurar o layout que renderizado,
podemos escolher o tipo de aparelho, se o aparelho est na vertical ou horizontal, o tema do
aplicativo, a classe associada com essa tela, a localizao para trabalhar com internacionalizao
de textos e a verso do Android utilizada quando for renderizar a tela do layout.
1 <TextView
2 android:id="@+id/texto"
3 android:layout_width="match_parent"
4 android:layout_height="wrap_content"
5 android:layout_marginTop="50dp"
6 android:gravity="center_horizontal"
7 android:text="@string/hello_world"
8 android:textSize="40sp" />
O TextView representa um texto na tela, como um label (rtulo), no qual pode ser definido o seu
texto, como ser o seu layout, tamanho do texto, cor do texto, entre outros.
Esse TextView est utilizando uma string (texto) chamada hello_world, para alterar o contedo
desse texto, na estrutura do projeto abra o arquivo ** app res values strings.xml** e altero
Ol Android! 16
o atributo value da string hello_world para Ol Android!!!. O arquivo strings.xml ficar com o
seguinte contedo:
1 <resources>
2 <string name="app_name">OlaAndroid</string>
3 <string name="hello_world">Ol Android!!!</string>
4 <string name="action_settings">Settings</string>
5 </resources>
Agora vamos adicionar uma imagem nessa tela, para isso voc pode utilizar uma imagem que exista
no seu computador ou usar alguma imagem disponvel na Internet, nesse exemplo estou usando um
logo do rob Android disponvel em: http://developer.android.com/images/brand/Android_Robot_-
100.png, esse logo pode ser usado, reproduzido e modificado gratuitamente.
Salve a figura Android_Robot_100.png dentro da pasta app res drawable.
Outro detalhe importante que o nome das imagens pode ter apenas os caracteres [a-z0-9]**,
portanto aps adicionar a imagem **Android_Robot_100.png** aparece a seguinte **men-
sagem de erro no Console: res/drawable-hdpi/Android_Robot_100.png: Invalid file name:
must contain only [a-z0-9.], porque no nome da figura tem caracteres maisculos.
Para resolver isso clique em cima da figura Android_Robot_100.png e escolha no menu Refactor
(Refatorar) a opo Rename (Renomear) ou clique na figura e pressione SHIFT + F6. Altere o nome
do arquivo para android.png.
No arquivo activity_main.xml aps a declarao do TextView, adicione a declarao do ImageView
que far uso da imagem do android.png:
1 <ImageView
2 android:id="@+id/imagem"
3 android:src="@drawable/android"
4 android:layout_width="match_parent"
5 android:layout_height="250dp"
6 android:layout_below="@id/texto"
7 android:contentDescription="@string/hello_world" />
Aps adicionar a figura na pasta drawable, o Android Studio gera automaticamente um registro para
@drawable/android. Como queremos deixar a imagem em baixo do texto adicionamos a propri-
edade android:layout_below="@id/texto" e o Android tambm pede que descrevamos a imagem
que est sendo apresentado para isso utilizamos a propriedade android:contentDescription=
"@string/hello_world" que est utilizando a string hello_world, esse texto ser utilizado apenas
para acessibilidade ele no aparece visualmente na tela.
http://developer.android.com/images/brand/Android_Robot_100.png
Ol Android! 17
Vamos adicionar uma mensagem Ol! quando a imagem do Android for clicada, para isso altere
no arquivo activity_main.xml a cdigo XML da declarao do ImageView adicionando as ltimas
duas linhas:
1 <ImageView
2 android:id="@+id/imagem"
3 android:src="@drawable/android"
4 android:layout_width="match_parent"
5 android:layout_height="250dp"
6 android:layout_below="@id/texto"
7 android:contentDescription="@string/hello_world"
8 android:clickable="true"
9 android:onClick="mostrarMensagem" />
Foi adicionado a propriedade android:clickable="true" informando que essa imagem pode ser
clicada e tambm a propriedade android:onClick="mostrarMensagem" informando que ao clicar
na imagem ser chamado o mtodo mostrarMensagem.
Abra a classe MainActivity, essa a Activity responsvel pela tela inicial do aplicativo, nela importe
as classes:
Ol Android! 18
1 import android.view.View;
2 import android.widget.Toast;
O Toast uma mensagem que aparece e desaparece da tela e o Toast.LENGTH_SHORT especifica que
uma mensagem que fica por um tempo curto na tela.
O cdigo completo da classe MainActivity ficar assim:
1 package com.leanpub.googleandroid.olaandroid;
2
3 import android.support.v7.app.AppCompatActivity;
4 import android.os.Bundle;
5 import android.view.Menu;
6 import android.view.MenuItem;
7 import android.view.View;
8 import android.widget.Toast;
9
10 public class MainActivity extends AppCompatActivity {
11
12 @Override
13 protected void onCreate(Bundle savedInstanceState) {
14 super.onCreate(savedInstanceState);
15 setContentView(R.layout.activity_main);
16 }
17
18 @Override
19 public boolean onCreateOptionsMenu(Menu menu) {
20 // Inflate the menu; this adds items to the action bar if it is present.
21 getMenuInflater().inflate(R.menu.menu_main, menu);
22 return true;
23 }
24
25 @Override
26 public boolean onOptionsItemSelected(MenuItem item) {
27 // Handle action bar item clicks here. The action bar will
Ol Android! 19
1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
2 xmlns:tools="http://schemas.android.com/tools"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:paddingLeft="@dimen/activity_horizontal_margin"
6 android:paddingRight="@dimen/activity_horizontal_margin"
7 android:paddingTop="@dimen/activity_vertical_margin"
8 android:paddingBottom="@dimen/activity_vertical_margin"
9 tools:context=".MainActivity">
10
11 <TextView
12 android:id="@+id/texto"
13 android:layout_width="match_parent"
14 android:layout_height="wrap_content"
15 android:layout_marginTop="50dp"
16 android:gravity="center_horizontal"
17 android:text="@string/hello_world"
18 android:textSize="40sp" />
19
20 <ImageView
21 android:id="@+id/imagem"
22 android:src="@drawable/android"
Ol Android! 20
23 android:layout_width="match_parent"
24 android:layout_height="250dp"
25 android:layout_below="@id/texto"
26 android:contentDescription="@string/hello_world"
27 android:clickable="true"
28 android:onClick="mostrarMensagem" />
29 </RelativeLayout>
Execute novamente o aplicativo no emulador do Android e clique sobre a figura para visualizar a
mensagem:
1.4 Resumo
Neste captulo foi apresentado como criar um novo projeto Android usando o Android Studio, como
criar e instalar um aplicativo no emulador. Vimos alguns componentes bsicos como a Activity, e na
tela os componentes TextView e ImageView, para terminar mostramos como um mtodo da Activity
pode ser chamado ao executar uma ao de click na figura. Esse conceito de chamada de mtodo
o mesmo para botes e outras aes como veremos mais adiante.
1.5 Exerccios
Exerccio 1 - Crie um novo emulador para tablet, usando como base o hardware do Nexus 10, e
execute o aplicativo OlaAndroid nele.
Ol Android! 21
Exerccio 2 - Altere o exemplo OlaAndroid para colocar em TexView com o seu nome logo embaixo
da figura do logo do Android.
Exerccio 3 - Para alterar o ttulo do aplicativo para Google Android devemos alterar em qual
arquivo?
Exerccio 4 - O que o componente Toast? E o que significa definir ele com a propriedade
Toast.LENGTH_LONG?
Exerccio 5 - Para definir tamanho dos componentes usamos algumas propriedades do Android como
match_parent e wrap_content, para que serve cada um deles?