mar 22 2010

Seu primeiro aplicativo no Google Android 2.1

Category: Android 2.1Edson Gonçalves @ 15:35

Olá, tudo bom? Como vão vocês?
Aqui vai um artigo para quem está interessado em entrar no mundo do Google Android e começar a desenvolver aplicativos.
Dúvidas e críticas são bem vindas.

Preparando o ambiente de desenvolvimento

Antes de começar, saiba que é necessário ter o Java JDK instalado e configurado em sua máquina. Caso não o tenha, clique aqui e baixe a versão apropriada para seu sistema operacional.  Lembre-se também de configurar a variável de ambiente do Java.

Download e instalação do Eclipse IDE

Para trabalhar com o Android, será necessário um bom ambiente de desenvolvimento, visando facilitar o nosso trabalho. O Eclipse IDE Classic é o suficiente para trabalhar com o Android.

Para baixar o EclipseIDE, clique aqui.

Figura 1 – Download do Eclipse IDE

Figura 1 – Download do Eclipse IDE

Download e instalação do Android SDK

Para construir aplicações para o Android, precisaremos do Android SDK. O SDK inclui um emulador, ao qual haverá a possibilidade de testar o aplicativo sem a necessidade de um celular com o Android SO.

Para fazer o download do SDK, clique aqui. O Android SDK é disponível nas plataformas Windows, Mac OS X e Linux (Figura 2). O SDK vem compactado, basta, ao baixá-lo, descompactar.

Figura 2 – Plataformas suportadas pelo Android SDK

Figura 2 – Plataformas suportadas pelo Android SDK

No Windows, podemos descompactar em um local desejado, por exemplo, dentro do drive C:.  No Linux e Mac OS, poderá ser colocado o diretório descompactado em HOME.

Vá até o executável que se encontrará no diretório do Android SDK e execute. Em Available Packages, temos as versões da plataforma do Android. Você pode deixar marcada apenas a opção para o Android 2.1, ao qual iremos utilizar ou manter todos. Clique em Install Selected.

Figura 3 – Sites, pacotes de arquivos do Android SDK

Figura 3 – Sites, pacotes de arquivos do Android SDK

Para configurar o Android SDK em seu sistema operacional, fazemos da seguinte forma:

No  Windows, vá em Painel de Controle>Sistema e Segurança>Sistema>Configurações Avançadas do Sistema.  Na aba Avançado clique no botão Variáveis de Ambiente.

Edite a variável PATH adicionando um ponto-e-vírgula (;) seguido do caminho pertencente ao diretório do Android SDK com o diretório tools e confirme. Se estiver instalado no Windows,  no drive C:, teria o seguinte caminho:

C:\android-sdk-windows\tools

Para o Mac OS X e Linux, edite seu arquivo .profile adicionando o diretório do Android SDK na variável PATH.

Um exemplo de como poderá ficar no Linux:

export PATH=$PATH:$HOME/android-sdk-linux /tools:$JAVA_HOME/bin

Download e instalação do Plugin do Android

Com o Eclipse iniciado, vá até o menu Help > Install New Software. Na caixa de diálogo Available Software, clique em  Add….

Na caixa de diálogo Add Site,  coloque o seguinte endereço em Location:

https://dl-ssl.google.com/android/eclipse/

Sua caixa de diálogo ficará similar a Figura 4.

Figura 4 – Adicionando o link para baixar o plugin do Android

Figura 4 – Adicionando o link para baixar o plugin do Android

Assim que adicionar o plugin, marque Developer Tools e clique no botão Next.

Figura 5 – Developer Tools selecionado

Figura 5 – Developer Tools selecionado

Na segunda etapa, mantenha como está, caso não tenha erros e prossiga. Na terceira etapa, aceite os termos de licença e clique no botão Finish.

Figura 6 – Aceite os termos de licença para finalizar o processo e iniciar a instalação

Figura 6 – Aceite os termos de licença para finalizar o processo e iniciar a instalação

Ao terminar a instalação, aceite o reinicio do Eclipse.

Para configurar o Android SDK, vá ao menu Window>Preferences, após o reinício do Eclipse na instalação do plugin, selecione Android.

Figura 7 – Configurando a localização do Android SDK

Figura 7 – Configurando a localização do Android SDK

Seu primeiro “Hello World!” com o Android 2.1

Chegou a hora de criarmos a nossa primeira aplicação Android, iniciando com um simples “Hello World!”.

Criando o projeto

Para criar o projeto no Eclipse IDE, siga os seguintes passos:

  1. Com o Eclipse em execução, selecione File>New>Project.
  2. Na caixa de dialogo New Project, selecione Android>Android Project. Prossiga em Next.
Figura 8 – Primeiro passo para criar um Projeto Android no Eclipse

Figura 8 – Primeiro passo para criar um Projeto Android no Eclipse

  1. Na criação do projeto Android, dê o nome de HelloAndroid em Project name. Marque  Android 2.1 em Build Target (Target Name). Preencha Properties da seguinte forma:
    1. Application name: HelloAndroidApp
    2. Package name: br.com.integrator
    3. Create Activity: HelloActivity
    4. Min SDK Version: 7
Figura 9 – Criação do Projeto Android

Figura 9 – Criação do Projeto Android

  1. Complete a criação do Projeto clicando em Finish.

Ao finalizar o assistente, veremos o projeto gerado pelo plugin, como na Figura 10.

Figura 10 – Projeto Android gerado no Eclipse IDE

Figura 10 – Projeto Android gerado no Eclipse IDE

Visualizando rapidamente a aplicação criada

A classe HelloActivity possui um método chamado onCreate() que contém uma chamada a setContentView().

Em setContentView(), vemos na passagem de parâmetro a classe R.layout.main. A classe R, gerada em gen>br.com.integrator, contém informações para o ícone do aplicativo, o layout e strings que se referem ao que será apresentado pelo aplicativo.

Em res>layout>main.xml, veremos o mesmo que o apresentado na Figura 11, ou seja, um layout padrão, com um label gerado.

Figura 11 – Aparência inicial do aplicativo padrão gerado

Figura 11 – Aparência inicial do aplicativo padrão gerado

O texto contido neste label se encontra em res>values>strings.xml. Você pode alterá-lo (veja Figura 12) se desejar. Após alterar, salve e volte a main.xml. Verá que a modificação foi imediata.

Figura 12 – Alteração do texto contido no label padrão gerado

Figura 12 – Alteração do texto contido no label padrão gerado

Rodando a aplicação gerada

Na view Package Explorer, clique com o direito sobre o projeto e selecione, no menu de contexto, o item Run As>Android Application.

Assim que tentar executar, o Eclipse retornará um erro, informando que não existe um AVD (Android Virtual Device). O AVD é um dispositivo virtual do Sistema Operacional do Android, simulando um aparelho.

Figura 13 – Alerta sobre a falta de existência de um Android AVD

Figura 13 – Alerta sobre a falta de existência de um Android AVD

Ao clicarmos em Yes, uma nova janela surgirá, conhecida por nós, onde teremos que criar a AVD em Virtual Devices. Clique no botão New.

Figura 14 – A Virtual Devices do AVD Manager

Figura 14 – A Virtual Devices do AVD Manager

Na caixa de diálogo Create new AVD, digite DefaultAVD em Name. Selecione o Google APIs (Google Inc.) – API Level 7 em Target. Também poderia ser Android 2.1 -API Level 7. Em Size, digite o número 32. Quando aos demais itens, mantenha-os como estão e clique em Create AVD.

O que fizemos foi criar uma plataforma com o Android 2.1 com um cartão SD de 32MB e uma tela HVGA.

Figura 15 – Criação do DefaultAVD

Figura 15 – Criação do DefaultAVD

Após a criação do dispositivo virtual do Android, feche a janela do Android SDK and AVD Manager.

Figura 16 – Dispositivo virtual do Android criado

Figura 16 – Dispositivo virtual do Android criado

Imediatamente, ao fechar a janela anterior, a janela Android Device Chooser surgirá. Selecione Launch a new Android Virtual Device e clique em Refresh.

O dispositivo virtual criado surgirá. Selecione-o seguindo de um OK.

Figura 17 – Selecionando o dispositivo virtual criado para rodar o aplicativo

Figura 17 – Selecionando o dispositivo virtual criado para rodar o aplicativo

O emulador do Android iniciará. Fique tranquilo, pois ele demora um pouco até carregar e exibir seu aplicativo.

Figura 18 – O aplicativo rodando

Figura 18 – O aplicativo rodando

Enquanto isso podemos olhar  o que ocorre por trás através da view Console.

Figura 19 – Saída na view Console

Figura 19 – Saída na view Console

Será que o Android pega?

Não tenha dúvidas que o maior problema que o iPhone vai enfrentar serão as empresas que adotarem o SO Android para aparelhos móveis. A maior diferença é a plataforma aberta, com uma linguagem acessível e uma base de milhares de desenvolvedores de Java, que com certeza passarão a desenvolver aplicativos para estes aparelhos.

Abraço a todos e até o próximo artigo.

Tags: , , , ,


mar 09 2010

JPA 2.0 na Prática com Hibernate 3.5

Category: JPA 2.0Edson Gonçalves @ 21:07

Olá, tudo bom? Como vão vocês?
Embora meus artigos sobre JPA 2.0 tenham uma sequencia, este em especial está sendo postado para sanar as dúvidas de vários leitores que me pediram para ensiná-los a usar o Hibernate 3.5, como ORM provider, para trabalhar com JPA 2.0.
Dúvidas e críticas são bem vindas.

Preparação do ambiente de trabalho

Se você olhou o artigo JPA na Prática – Parte 1, será similar no banco de dados e  na ferramenta porém, haverá uma modificação na biblioteca JPA.

A  biblioteca JPA

O Hibernate é um ORM como o EclipseLink, muito utilizado no desenvolvimento Web com Java,  cujo a versão 3.5 possui suporte a Java Persistence API 2.0.  Você pode baixá-la clicando aqui. Clique em Download, no menu lateral esquerdo.

A versão, no momento em que escrevo, é a 3.5.0-CR-2 (ainda em desenvolvimento).

Os arquivos que terá de baixar serão:

  • Hibernate Core
  • Hibernate JPAModelGen

Ao baixar os arquivos, descompacte-os.  Você precisará das seguintes bibliotecas:

  • hibernate3.jar
  • antlr-2.7.6.jar
  • commons-collections-3.1.jar
  • dom4j-1.6.1.jar
  • javassist-3.9.0.GA.jar
  • jta-1.1.jar
  • slf4j-api-1.5.8.jar
  • hibernate-jpa-2.0-api-1.0.0-CR-1.jar

Além destes arquivos, será necessário utilizar as bibliotecas da Simple Logging Facade for Java, SLF4J. Baixe o arquivo com todas as bibliotecas da SLF4J aqui.

Descompacte o arquivo após baixá-lo.  Você precisará das seguintes bibliotecas:

  • slf4j-jdk14-1.5.11.jar
  • slf4j-log4j12-1.5.11.jar

O Projeto

O projeto para este pequeno tutorial é o mesmo do criado no artigo JPA na Prática – Parte 1, portanto não será explicado novamente como fazê-lo.

As bibliotecas no projeto

Podemos tanto criar uma biblioteca de usuário, contendo todas elas ou, simplesmente, adicionar todas ao seu projeto.

Figura 1 – Bibliotecas do Hibernate 3.5 e SLF4J adicionadas ao projeto

Figura 1 – Bibliotecas do Hibernate 3.5 e SLF4J adicionadas ao projeto

Configurando o arquivo persistence.xml

Similar ao mostrado na JPA 2.0 na Prática – Parte 2, no arquivo persistence.xml, altere-o conforme a Listagem 1 abaixo:
Listagem 1 – O arquivo persistence.xml

<?xml version="1.0" encoding="UTF-8"?>

<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/persistence

http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">

<persistence-unit name="JpaNaPratica" transaction-type="RESOURCE_LOCAL">

<class>br.com.integrator.Categoria</class>

<properties>

<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/jpapratica"></property>

<property name="javax.persistence.jdbc.user" value="edson"></property>

<property name="javax.persistence.jdbc.password" value="integrator"></property>

<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"></property>

<property name="hibernate.show_sql" value="true" />

<property name="hibernate.format_sql" value="true" />

<property name="hibernate.hbm2ddl.auto" value="create"/>

</properties>

</persistence-unit>

</persistence>

Infelizmente, nem todas as propriedades de persistence.xml são padronizadas, conforme já dito no artigo JPA na Prática – Parte 2. Para exibir a saída das instruções SQL geradas, assim como outras informações, as seguintes propriedades foram  adicionadas ao arquivo persistence.xml:

<property name="hibernate.show_sql" value="true" />

<property name="hibernate.format_sql" value="true" />

Para criar a tabela, utilizamos a seguinte adição:

<property name=”hibernate.hbm2ddl.auto” value=”create”/>

Testando o Projeto

Similar ao mostrado na JPA 2.0 na Prática – Parte 2, execute a classe com o método main() e veja os resultados refletidos no banco de dados.

Hibernate ou EclipseLink?

Muitos me perguntam isso, querendo saber qual é o melhor. O ideal, como sempre, é conhecer ambos e tirar as suas próprias conclusões. Em JPA 2.0, ao menos por enquanto, no que foi mostrado, não há diferença.

Abraço a todos e até o próximo artigo.

Tags: , , , , ,