Iniciando desenvolvimento para Android

Olá pessoal,

Hoje compartilho um tutorial bem prático para quem deseja iniciar no desenvolvimento de aplicativos para Android. Todos sabemos que a cada ano cresce o número de usuários que se utilizam desse sistema, na verdade, estima-se que existem mais de 1,1 bilhão1 de aparelhos com o sistema da Google. Portanto, para aqueles que desejam adentrar nesse novo leque de oportunidades nunca é tarde para começar.

Bem, mãos à obra. Mas antes de iniciar é necessário satisfazer algumas dependências para começar a desenvolver seus aplicativos, na verdade, são necessários o Java SDK ou OpenJDK (usuários Linux) e o Android SDK, mais uma IDE (Ambiente de Desenvolvimento integrado) que pode ser o Eclipse, NetBeans, IntelliJ IDEA ou Android Studio ou outro de sua preferência. Particularmente, estou usando o IntelliJ IDEA, pois me pareceu mais robusto e leve que os outros, no entanto, o Eclipse e o NetBeans são mais conhecidos. No fim do post deixo os links para download.

Após instalar o Android SDK será necessário baixar vários pacotes (APIs, mas precisamente) necessárias para o desenvolvimento e compilação do aplicativo Android. Vale ressaltar que existem váriais API’s disponíveis desde o Android 1.5 [API 3] até o Android 5.0.1 [API 21] . O projeto do tutorial está sendo construído como base no Android 2.2 [API 8] (API mínima para execução), Android 4.1.2 [API 16] (API de compilação) e o Android 4.2.2 [API 17] (API alvo).

java_00

Após conhecermos um pouco das versões do Android e aprendermos a montar um ambiente de desenvolvimento, vamos colocar a mão na massa e criar um aplicativo Android! Ele é simples, mas é o primeiro passo para conhecer a linguagem, sua estrutura e o mecanismo de funcionamento de um aplicativo.

Nota: O tutorial utiliza o Eclipse, mas pode ser realizado em qualquer das outras duas IDEs citadas, com pequenas modificações nos passos. Os códigos presentes no tutorial não foram testados com as API’s mas novas (19, 20 e 21).

O primeiro passo para começar um aplicativo é criar um projeto Android. Após abrir o Eclipse, clique com o botão direito “New → Android Application Project”.

criar_projeto

Figura 1 – Criando um projeto Android

Será aberta uma tabela onde são definidas algumas características do projeto.

Os 3 primeiros campos são referentes à identificação da aplicação. No campo “Application Name” deve ser informado o nome de como você quer que as pessoas conheçam o aplicativo.  No campo “Project Name” deve ser informado o nome do projeto e no campo “Package Name” informe qual será o  nome do pacote java.  

No campo “Minimum Required SDK” deve ser escolhido qual a versão mínima do Android que seu aplicativo exigirá para ser executado. No campo “Theme” deve ser escolhido qual o tema que deseja utilizar, lembrando que alguns temas só funcionam em determinadas versões. Caso seja selecionado um tema incompatível com a versão escolhida será exibida uma mensagem de erro.

definir_nome

Figura 2 – Definindo versão Android do projeto

Na próxima tela são definidas as configurações do projeto. Por padrão o Eclipse já trás as opções comumente utilizadas já selecionadas.

É possível alterar o ícone do aplicativo na próxima tela e ter uma ideia do tamanho para cada resolução.

definir_nome_next

Figura 3 – Configurações do projeto

definir_nome_next_2

Figura 4 – Escolhendo ícone da aplicação

Na tela “Create Activity” deve ser definido o nome da Activity. Uma Activity nada mais é que a classe responsável pela interação entre os componentes e o usuário.  Activity está relacionado à tarefa que uma aplicação pode fazer. Essa tarefa pode ser, por exemplo, a tela inicial de um aplicativo, uma lista de itens etc, ou seja, algo que possa ser apresentável para o usuário. Activity é o componente chave do Android e para haver interação com a interface de usuário uma classe deve herdar de uma activity.

definir_nome_next_3

Figura 5 – Tela para a escolha do tipo de Activity

Na próxima tela deve ser realizado as configurações da Activity.  No campo “Activity Name” deve ser informado o nome que a classe java terá. Já no campo “Layout Name” informe qual será o nome do arquivo que representa o layout da Activity. Clique em “Finish” para finalizar.

definir_nome_next_4

Figura 6 – Configurações da Activity

Pronto!! Já está criada a estrutura básica do aplicativo.

O próximo passo será criar o aplicativo em si. Neste post vou utilizar como exemplo um aplicativo que consiste em calcular a média a partir de 3 notas informadas.

Para montar a interface do aplicativo é necessário criar um arquivo em “res → layout”. No nosso caso, quando criamos as configurações iniciais, além de ter sido criada a Activity, foi criado também um arquivo que define o seu layout. O nome do arquivo é “activity_media.xml”.

xml

Figura 7 – Estrutura de pastas do projeto

Neste arquivo devem ser criado os campos, conforme o código abaixo:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MediaActivity" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:text="@string/nota1" />

<EditText
android:id="@+id/txtNota1"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:inputType="number" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:text="@string/nota2" />

<EditText
android:id="@+id/txtNota2"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:inputType="number" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:text="@string/nota3" />

<EditText
android:id="@+id/txtNota3"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:inputType="number" />

<Button
android:id="@+id/btnCalcular"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:text="@string/calcular"
android:textSize="15sp" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="25dp"
android:text="@string/media" />

<TextView
android:id="@+id/txtMediaFinal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="25dp"
android:text="@string/nota_final" />

</LinearLayout>

LISTAGEM 1 – ARQUIVO DE CONFIGURAÇÃO DO LAYOUT DO APLICATIVO

Neste layout temos a seguinte estrutura: um LinearLayout que envolve os demais componentes, depois temos os componentes TextView que são componentes textos, que no exemplo são utilizados para indicar o que cada campo representa. No layout existe também 3 EditText que são utilizados para entrada de informações, no exemplo são os campos que recebem as notas. Outro componente que aparece é o Button, que é um botão, no exemplo o botão que está associado a função de calcular a média.

Para construir esta interface pode ser escrito um componente por vez na estrutura XML, ou também pode ser utilizada a parte gráfica onde é possível “arrastar” os componentes no layout. Para acessar a o editor visual, clique em “Graphical Layout”.

parte_grafica

Figura 8 – Editor visual para construção de Layouts

Depois de criada a interface é preciso associar a interface a uma Activity pois é nela que é possível fazer a interação entre os componentes. No nosso exemplo, já temos a Activity “com.exemplo.calculamediafinal.MediaActivity.java”. Podemos perceber que é uma classe como qualquer outra em Java, o que a define como uma Activity é que ela estende a classe Activity.

package com.exemplo.calculamediafinal;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MediaActivity extends Activity {

private EditText txtNota1;
private EditText txtNota2;
private EditText txtNota3;
private Button btnCalcular;
private TextView txtMediaFinal;
private double nota1;
private double nota2;
private double nota3;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_media);

txtNota1 = (EditText) findViewById(R.id.txtNota1);
txtNota2 = (EditText) findViewById(R.id.txtNota2);
txtNota3 = (EditText) findViewById(R.id.txtNota3);
btnCalcular = (Button) findViewById(R.id.btnCalcular);
txtMediaFinal = (TextView) findViewById(R.id.txtMediaFinal);
btnCalcular.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
nota1 = Double.parseDouble(txtNota1.getText().toString());
nota2 = Double.parseDouble(txtNota2.getText().toString());
nota3 = Double.parseDouble(txtNota3.getText().toString());

Double media = calcularMedia(nota1, nota2, nota3);
txtMediaFinal.setText(media.toString());
}
});

}

private double calcularMedia(double n1, double n2, double n3) {
double mediaFinal = (n1 + n2 + n3) / 3;
return mediaFinal;
}

}

LISTAGEM 2 – CÓDIGO DA APLICAÇÃO

O método onCreate  é um método que toda activity possui.  É a primeira função a ser executada quando uma Activity é lançada. Geralmente é a responsável por carregar os layouts XML e outras operações de inicialização. É executada somente uma vez durante a “vida útil” da Activity.

No exemplo podemos ver que o primeiro passo é associar a activity a um layout através do id. Depois cada componente é declarado e associado ao componente do layout também por meio do id.

Para obter o valor que foi digitado na tela em cada campo de nota, é usado o método “getText” que o componente editText possui.

Para calcular a média, foi criado um método que recebe as notas e retorna o valor da média. Este método é chamado no evento “OnClick” do botão “Calcular”. O valor retornado é inserido no componente textView “txtMediaFinal”.

Pronto!! Seu aplicativo Android já está codificado, agora vamos executá-lo.

Para executar existem duas maneiras, a primeira é executar a partir de um dispositivo Android como um celular ou tablet. Outra maneira é utilizar o emulador disponível no Eclipse, em ambos os casos é necessário que a versão do Android seja compatível com a versão que foi criado o aplicativo.

Mas como criar o emulador? Basta clicar no símbolo de dispositivo Android. Será aberto uma tela a onde é listado os emuladores que já existem. Clique em “New”, a interface de criação será aberta, nela precisa ser definido um nome, qual dispositivo que deseja simular e a versão que ele terá. Feito essas configurações básicas clique em “OK”.

emulador

Figura 9 – Lista de emuladores

criar_emulador

Figura 10 – Criando um emulador Android

Para executar o aplicativo clique com o botão direito em cima do projeto e selecione a opção “Run As → Android Application”. Se tiver mais de um emulador ou um dispositivo conectado será exibida uma interface para escolher em qual deseja instalar sua aplicação.  A imagem abaixo ilustra como ficou a aplicação quando executada no emulador.

execucao

Figura 11 – Aplicação rodando no emulador

Difícil?! Não! Desenvolver para Android não é nada complicado, para aqueles que já conhecem um pouco de java a estrutura é muito parecida. Esse foi um exemplo bem simples para quem nunca teve contato com a linguagem.

Fonte: Matera (com alterações)

Dependências:

Java SDK 7 ou Java SDK 8 ou OpenJDK (Linux)

Android SDK 24.0.2

Eclipse Luna 4.4.1 ou NetBeans 8.0.2 ou IntelliJ IDEA 14.0.2 ou Android Studio

Qualquer dúvida é só perguntar. Um abraço e boa programação.

Futuramente estarei postando um tutorial sobre a linguagem de programação Java focada no desenvolvimento para Android.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s