Desenvolvimento de aplicativos para a plataforma Android
José Alexandre Macedo
Monte Sião/MG
De onde venho...
Foz do Iguaçu/PRAlfenas/MG
Vila Velha/ES
Vitória/ES
Guarapari/ES
Rio de Janeiro/RJ
BlogDesenvolvimento & Pesquisa
jamacedo.com
ArticulistaRevista Java Magazine
Background+8 Anos Java +4 Anos Android
Projetos
O futuro é mobile
Mudança Fundamental(em escala)
Mudança Fundamental(em uso)
Polarização das Empresas
Variação Geográfica
Como aplicativos são usados?
Oportunidades
Vamos aproveitar essa onda!
MundoAndroid
+1.5 milhãoativações diárias
Emprego
Vantagens do Android
Dispositivos para todos os bolsos
Código Aberto
Código “Aberto”
Desenvolvimento
em Java
Programação Multiplataforma
Android vai além dos smartphones e tablets...
Android vai além dos smartphones e tablets...
Android vai além dos smartphones e tablets...
Android vai além dos smartphones e tablets...
Sim...
A Google quer dominar o mundo!
Breve histórico
ÚltimaVersão
Breve históricoOutubro de 2003
Android, Inc. foi fundada em Palo Alto, California por Andy Rubin, Rich Miner, Nick Sears
e Chris White
Breve histórico
Julho de 2005
Google adquire Android Inc.
Breve histórico
5 de Novembro de 2007
A Open Handset Alliance é formada
Breve histórico
12 de Novembro de 2007
Android Beta SDK é disponibilizado
Breve histórico
23 de Setembro de 2008
Lançado o primeiro smatphone com Android
1.0, o HTC Dream (G1)
~35 apps no lançamento da Android Market
Distribuição Versões Hoje
Distribuição Versões Hoje
Arquitetura
Arquitetura
Processo de desenvolvimento Java tradicional
.java .class JVM
Compilação Interpretação
Processo de desenvolvimento Android
.dex
DalvikVirtual
Machine
.java .class
Compilação Compilaçãodex
.apk
Interpretação
apkbuilder
(Android 5+ART)
Componentes de Aplicação
Componentes de Aplicação
ActivityResponsável por definir a
interface e os comportamentosde uma tela da aplicação
Componentes de Aplicação
ServiceSão os processos de fundo sem
interface com usuário. Podem ser locais ou remotos
Componentes de Aplicação
ContentProvider
Forma de expor os dados da aplicação
sem expor suas implementações
Componentes de Aplicação
IntentsPermite criar propósitos. Ex.: abrir uma
activity, iniciar um serviço, exibir uma página web ou fazer uma ligação
Interface com Usuário
Interface com Usuário
Views são os blocos de construção básicos
A combinação de views forma um
group view
Declaradas em arquivos XML
Ciclo de Vida
Ferramentas necessárias
SDKAndroid Developer Tools (ADT)Plugin Eclipse
Tenho outra opção de IDE?
Sim!
Ferramentas necessárias
Android Virtual Devices
Emulador é muito lento?
http://www.genymotion.com/
Solução: Genymotion
Logcat
O melhor amigo do desenvolvedor!
Logcat
O melhor amigo do desenvolvedor!
#partiuEclipse
Criando um novo projeto
Criando um novo projeto
Criando um novo projeto
Criando um novo projeto
Criando um novo projeto
Dissecandoa aplicação
gerada
EstruturaBásica doProjeto
Activities, Services, ContentProviders e outras
classes Java
Fornece referências para os recursos
disponíveis no projeto
Gerada e mantida automaticamente
NÃO MEXA!
Armazena arquivos brutos
Permite subdiretórios
Não gera ids
Um recurso é um arquivo ou valor
utilizado pela aplicação
A pasta drawable-* armazena imagens
A values contém valores que podem
ser usados em vários locais.
Outros arquivos válidos são para
arrays, colors, dimensions e styles
A layout contém os arquivos de interface
com usuário
Define os conteúdos e comportamentos
das aplicações
Antes de executar o projetos
precisamos de umvirtual device (AVD)
Localizem e cliquem no ícone do ADV Manager
Em seguida cliquem em “New...”Para criarmos um novo emulador
Vamos configurar nosso novo emulador
Agora é só apertar o play!
Criando nosso 1º aplicativo
Comparadorde
Preços
compensa mais?
600ml 360ml
R$ 4,75 R$ 3,20
Qual produto
Estrutura do Projetomain.xml resultado.xml
Transiçãocom Intents
1ª Opção
R$ mL
2ª Opção
R$ mL
X
Comparar
A Xª opção está compensando mais porque está Y% mais barata!
MainActivity.java ResultActivity.java
string.xml
AndroidManifest.xml
Criar
Modificar
1º PassoModificar main.xml
2º PassoCriar resultado.xml
3º PassoModificar MainActivity.java
Crie mais 4 variáveis com nomes quantidadeOp1, precoOp2, quantidadeOp2, botaoComparacao da mesma forma e usando o
id correto
3º PassoModificar MainActivity.java
Método compararPrecos()
4º PassoCriar ResultActivity.java
Recupere o TextView do resultado usando o método findViewByIde altere o texto com o resultado
5º PassoModificar AndroidManifest.xml
Resultado Final
Finalizei meu aplicativo...
Como publicar no
Google Play?
1º Registro no Google Play $25
2º Assinar o aplicativo com uma chave privada
3º Realizar upload do apk e de imagens do
aplicativo
Publicando no Google Play
Quero mais!
ComoFaço?
Arsenal Android
https://android-arsenal.com/
Passagemobrigatória!
GuiasDocumentação
AndroidTraining
Exemplos Código
VídeosBlog
Artigos
Tutoriais
http://groups.google.com/group/android-developers
http://groups.google.com/group/android-discuss
http://groups.google.com/group/android-ndk
http://stackoverflow.com/questions/tagged/android
Grupos de Discussão
Livros
Dúvidas?
Top Related