Top Banner
Desenvolvimento de aplicativos para a plataforma Android José Alexandre Macedo
103

Desenvolvimento de Aplicativos para a Plataforma Android

Jul 14, 2015

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Desenvolvimento de Aplicativos para a Plataforma Android

Desenvolvimento de aplicativos para a plataforma Android

José Alexandre Macedo

Page 2: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 3: Desenvolvimento de Aplicativos para a Plataforma Android

BlogDesenvolvimento & Pesquisa

jamacedo.com

ArticulistaRevista Java Magazine

Background+8 Anos Java +4 Anos Android

Page 4: Desenvolvimento de Aplicativos para a Plataforma Android

Projetos

Page 5: Desenvolvimento de Aplicativos para a Plataforma Android
Page 6: Desenvolvimento de Aplicativos para a Plataforma Android

O futuro é mobile

Page 7: Desenvolvimento de Aplicativos para a Plataforma Android

Mudança Fundamental(em escala)

Page 8: Desenvolvimento de Aplicativos para a Plataforma Android

Mudança Fundamental(em uso)

Page 9: Desenvolvimento de Aplicativos para a Plataforma Android

Polarização das Empresas

Page 10: Desenvolvimento de Aplicativos para a Plataforma Android

Variação Geográfica

Page 11: Desenvolvimento de Aplicativos para a Plataforma Android

Como aplicativos são usados?

Page 12: Desenvolvimento de Aplicativos para a Plataforma Android

Oportunidades

Page 13: Desenvolvimento de Aplicativos para a Plataforma Android
Page 14: Desenvolvimento de Aplicativos para a Plataforma Android
Page 15: Desenvolvimento de Aplicativos para a Plataforma Android
Page 16: Desenvolvimento de Aplicativos para a Plataforma Android
Page 17: Desenvolvimento de Aplicativos para a Plataforma Android
Page 18: Desenvolvimento de Aplicativos para a Plataforma Android

Vamos aproveitar essa onda!

Page 19: Desenvolvimento de Aplicativos para a Plataforma Android

MundoAndroid

Page 20: Desenvolvimento de Aplicativos para a Plataforma Android

+1.5 milhãoativações diárias

Page 21: Desenvolvimento de Aplicativos para a Plataforma Android

Emprego

Page 22: Desenvolvimento de Aplicativos para a Plataforma Android

Vantagens do Android

Page 23: Desenvolvimento de Aplicativos para a Plataforma Android

Dispositivos para todos os bolsos

Page 24: Desenvolvimento de Aplicativos para a Plataforma Android

Código Aberto

Page 25: Desenvolvimento de Aplicativos para a Plataforma Android

Código “Aberto”

Page 26: Desenvolvimento de Aplicativos para a Plataforma Android

Desenvolvimento

em Java

Page 27: Desenvolvimento de Aplicativos para a Plataforma Android

Programação Multiplataforma

Page 28: Desenvolvimento de Aplicativos para a Plataforma Android

Android vai além dos smartphones e tablets...

Page 29: Desenvolvimento de Aplicativos para a Plataforma Android

Android vai além dos smartphones e tablets...

Page 30: Desenvolvimento de Aplicativos para a Plataforma Android

Android vai além dos smartphones e tablets...

Page 31: Desenvolvimento de Aplicativos para a Plataforma Android

Android vai além dos smartphones e tablets...

Page 32: Desenvolvimento de Aplicativos para a Plataforma Android

Sim...

A Google quer dominar o mundo!

Page 33: Desenvolvimento de Aplicativos para a Plataforma Android

Breve histórico

Page 34: Desenvolvimento de Aplicativos para a Plataforma Android

ÚltimaVersão

Page 35: Desenvolvimento de Aplicativos para a Plataforma Android

Breve históricoOutubro de 2003

Android, Inc. foi fundada em Palo Alto, California por Andy Rubin, Rich Miner, Nick Sears

e Chris White

Page 36: Desenvolvimento de Aplicativos para a Plataforma Android

Breve histórico

Julho de 2005

Google adquire Android Inc.

Page 37: Desenvolvimento de Aplicativos para a Plataforma Android

Breve histórico

5 de Novembro de 2007

A Open Handset Alliance é formada

Page 38: Desenvolvimento de Aplicativos para a Plataforma Android

Breve histórico

12 de Novembro de 2007

Android Beta SDK é disponibilizado

Page 39: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 40: Desenvolvimento de Aplicativos para a Plataforma Android

Distribuição Versões Hoje

Page 41: Desenvolvimento de Aplicativos para a Plataforma Android

Distribuição Versões Hoje

Page 42: Desenvolvimento de Aplicativos para a Plataforma Android

Arquitetura

Page 43: Desenvolvimento de Aplicativos para a Plataforma Android

Arquitetura

Page 44: Desenvolvimento de Aplicativos para a Plataforma Android

Processo de desenvolvimento Java tradicional

.java .class JVM

Compilação Interpretação

Page 45: Desenvolvimento de Aplicativos para a Plataforma Android

Processo de desenvolvimento Android

.dex

DalvikVirtual

Machine

.java .class

Compilação Compilaçãodex

.apk

Interpretação

apkbuilder

(Android 5+ART)

Page 46: Desenvolvimento de Aplicativos para a Plataforma Android

Componentes de Aplicação

Page 47: Desenvolvimento de Aplicativos para a Plataforma Android

Componentes de Aplicação

ActivityResponsável por definir a

interface e os comportamentosde uma tela da aplicação

Page 48: Desenvolvimento de Aplicativos para a Plataforma Android

Componentes de Aplicação

ServiceSão os processos de fundo sem

interface com usuário. Podem ser locais ou remotos

Page 49: Desenvolvimento de Aplicativos para a Plataforma Android

Componentes de Aplicação

ContentProvider

Forma de expor os dados da aplicação

sem expor suas implementações

Page 50: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 51: Desenvolvimento de Aplicativos para a Plataforma Android

Interface com Usuário

Page 52: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 53: Desenvolvimento de Aplicativos para a Plataforma Android

Ciclo de Vida

Page 54: Desenvolvimento de Aplicativos para a Plataforma Android

Ferramentas necessárias

SDKAndroid Developer Tools (ADT)Plugin Eclipse

Page 55: Desenvolvimento de Aplicativos para a Plataforma Android

Tenho outra opção de IDE?

Sim!

Page 56: Desenvolvimento de Aplicativos para a Plataforma Android

Ferramentas necessárias

Android Virtual Devices

Page 57: Desenvolvimento de Aplicativos para a Plataforma Android

Emulador é muito lento?

http://www.genymotion.com/

Solução: Genymotion

Page 58: Desenvolvimento de Aplicativos para a Plataforma Android

Logcat

O melhor amigo do desenvolvedor!

Page 59: Desenvolvimento de Aplicativos para a Plataforma Android

Logcat

O melhor amigo do desenvolvedor!

Page 60: Desenvolvimento de Aplicativos para a Plataforma Android

#partiuEclipse

Page 61: Desenvolvimento de Aplicativos para a Plataforma Android

Criando um novo projeto

Page 62: Desenvolvimento de Aplicativos para a Plataforma Android

Criando um novo projeto

Page 63: Desenvolvimento de Aplicativos para a Plataforma Android

Criando um novo projeto

Page 64: Desenvolvimento de Aplicativos para a Plataforma Android

Criando um novo projeto

Page 65: Desenvolvimento de Aplicativos para a Plataforma Android

Criando um novo projeto

Page 66: Desenvolvimento de Aplicativos para a Plataforma Android

Dissecandoa aplicação

gerada

Page 67: Desenvolvimento de Aplicativos para a Plataforma Android

EstruturaBásica doProjeto

Page 68: Desenvolvimento de Aplicativos para a Plataforma Android

Activities, Services, ContentProviders e outras

classes Java

Page 69: Desenvolvimento de Aplicativos para a Plataforma Android
Page 70: Desenvolvimento de Aplicativos para a Plataforma Android

Fornece referências para os recursos

disponíveis no projeto

Gerada e mantida automaticamente

NÃO MEXA!

Page 71: Desenvolvimento de Aplicativos para a Plataforma Android

Armazena arquivos brutos

Permite subdiretórios

Não gera ids

Page 72: Desenvolvimento de Aplicativos para a Plataforma Android

Um recurso é um arquivo ou valor

utilizado pela aplicação

Page 73: Desenvolvimento de Aplicativos para a Plataforma Android

A pasta drawable-* armazena imagens

Page 74: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 75: Desenvolvimento de Aplicativos para a Plataforma Android
Page 76: Desenvolvimento de Aplicativos para a Plataforma Android

A layout contém os arquivos de interface

com usuário

Page 77: Desenvolvimento de Aplicativos para a Plataforma Android
Page 78: Desenvolvimento de Aplicativos para a Plataforma Android
Page 79: Desenvolvimento de Aplicativos para a Plataforma Android

Define os conteúdos e comportamentos

das aplicações

Page 80: Desenvolvimento de Aplicativos para a Plataforma Android
Page 81: Desenvolvimento de Aplicativos para a Plataforma Android

Antes de executar o projetos

precisamos de umvirtual device (AVD)

Page 82: Desenvolvimento de Aplicativos para a Plataforma Android

Localizem e cliquem no ícone do ADV Manager

Em seguida cliquem em “New...”Para criarmos um novo emulador

Page 83: Desenvolvimento de Aplicativos para a Plataforma Android

Vamos configurar nosso novo emulador

Page 84: Desenvolvimento de Aplicativos para a Plataforma Android

Agora é só apertar o play!

Page 85: Desenvolvimento de Aplicativos para a Plataforma Android

Criando nosso 1º aplicativo

Comparadorde

Preços

Page 86: Desenvolvimento de Aplicativos para a Plataforma Android

compensa mais?

600ml 360ml

R$ 4,75 R$ 3,20

Qual produto

Page 87: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 88: Desenvolvimento de Aplicativos para a Plataforma Android

1º PassoModificar main.xml

Page 89: Desenvolvimento de Aplicativos para a Plataforma Android

2º PassoCriar resultado.xml

Page 90: Desenvolvimento de Aplicativos para a Plataforma Android

3º PassoModificar MainActivity.java

Crie mais 4 variáveis com nomes quantidadeOp1, precoOp2, quantidadeOp2, botaoComparacao da mesma forma e usando o

id correto

Page 91: Desenvolvimento de Aplicativos para a Plataforma Android

3º PassoModificar MainActivity.java

Método compararPrecos()

Page 92: Desenvolvimento de Aplicativos para a Plataforma Android

4º PassoCriar ResultActivity.java

Recupere o TextView do resultado usando o método findViewByIde altere o texto com o resultado

Page 93: Desenvolvimento de Aplicativos para a Plataforma Android

5º PassoModificar AndroidManifest.xml

Page 94: Desenvolvimento de Aplicativos para a Plataforma Android

Resultado Final

Page 95: Desenvolvimento de Aplicativos para a Plataforma Android

Finalizei meu aplicativo...

Como publicar no

Google Play?

Page 96: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 97: Desenvolvimento de Aplicativos para a Plataforma Android

Quero mais!

ComoFaço?

Page 98: Desenvolvimento de Aplicativos para a Plataforma Android

Arsenal Android

https://android-arsenal.com/

Page 99: Desenvolvimento de Aplicativos para a Plataforma Android

Passagemobrigatória!

GuiasDocumentação

AndroidTraining

Exemplos Código

VídeosBlog

Artigos

Tutoriais

Page 100: Desenvolvimento de Aplicativos para a Plataforma Android

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

Page 101: Desenvolvimento de Aplicativos para a Plataforma Android

Livros

Page 102: Desenvolvimento de Aplicativos para a Plataforma Android

Dúvidas?

Page 103: Desenvolvimento de Aplicativos para a Plataforma Android

jamacedo.com @jamacedo

[email protected]

Obrigado!