desenvolvimento android p1
TRANSCRIPT
![Page 1: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/1.jpg)
Desenvolvimento Android
George Nunes
Parte 1
![Page 2: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/2.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Conteúdo
Arquitetura Máquinas Virtuais Application Frameworks Ambientes de desenvolvimento First App Principais arquivos Acitivity - Ciclo de vida
![Page 3: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/3.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Arquitetura Android
![Page 4: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/4.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Máquinas Virtuais
Java - Dalvik
![Page 5: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/5.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Máquinas Virtuais
![Page 6: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/6.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Gerencia o ciclo de vida de aplicações. Responsável por iniciar, parar e retomar as diversas aplicações.
![Page 7: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/7.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Responsável por renderizar a UI.
![Page 8: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/8.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Responsável pela instalação e remoção de aplicativos.
![Page 9: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/9.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Permite a interação com os serviços de telefonia, como sms e mms.
![Page 10: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/10.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Componente responsável por compartilhar dados entre aplicações.
![Page 11: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/11.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Gerenciamento de recursos de aplicações – por exemplo, imagens, sons e etc.
![Page 12: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/12.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Fornece às aplicações os widgets (como botões, listas, etc) e gerencia seu comportamento.
![Page 13: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/13.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Permite que as aplicações acessem serviços baseados em localização seja por GPS, triangulação de antenas.
![Page 14: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/14.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Application Framework
Mecanismo de troca de mensagens entre as aplicações.
![Page 15: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/15.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Ambientes de Desenvolvimento
![Page 16: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/16.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
Criar um AVD (Android Virtual Device); Utilizar Dispositivo em porta USB; Acesso feito pelo ADB
File -> new -> Android Application Project
![Page 17: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/17.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
Imagem tela de criação de Primeiro App
![Page 18: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/18.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
![Page 19: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/19.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
![Page 20: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/20.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
![Page 21: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/21.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
First App
![Page 22: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/22.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Principais Arquivos MainActivity.java : código fonte Java. Este
arquivo contém a parte Java da implementação de uma aplicação Android.
BuildConfig.java : classe onde são definidas algumas configurações da construção de um projeto;
R.java : classe onde são mapeadas as constantes de acesso aos recursos de um aplicativo. Mapeamento XML -> Java;
Pasta res : o diretório res é o local onde encontram-se os recursos da nossa aplicação. Dentro deste diretório, existem subdiretórios para cada tipo de recurso;
AndroidManifest.xml : é um arquivo XML onde ficam as configurações necessárias para a execução do aplicativo para Android e é neste arquivo que estarão configurados os componentes da aplicação, como as Activities;
![Page 23: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/23.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Support Appcompact – Exemplo
![Page 24: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/24.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Activity Uma Activity representa uma tela da aplicação e é
responsável por tratar os eventos gerados nessa tela, como, por exemplo, quando o usuário pressiona um botão ou quando um item de menu é escolhido;
Na prática podemos associar a palavra activity à palavra “tela”;
Uma activity deve herdar da classe android.app.Activity ou alguma subclasse desta;
![Page 25: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/25.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Activity - Ciclo de vida
Executando(no topo da pilha); Temporariamente interrompida em segundo plano; Completamente destruída;
O importante é entender que o sistema operacional cuida desse ciclo de vida, mas ao desenvolver aplicações é importante levar cada estado possível em consideração para desenvolver uma aplicação mais robusta;
![Page 26: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/26.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
![Page 27: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/27.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Activity - Ciclo de vida
![Page 28: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/28.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Chamado quando a activity é criada. Utilizado para fazer todas as funções como criar a View, linkar os dados às listas e etc.
![Page 29: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/29.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Chamado quando a activity se torna visível ao usuário. Seguido pelo onResume() se a activity roda na frente ou por onStop() se ela se torna invisível.
![Page 30: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/30.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma Chamado quando a
activity inicia a interação com o usuário. Nesse ponto, nesse ponto a
activity está no topo da pilha de activitys.
![Page 31: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/31.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Chamado quando uma activity anterior está sendo resumida. Usado para persistir mudanças ainda não efetivadas, parar animações e outros eventos que possam consumir a CPU. Implementações desse método devem ser rápidas devido a próxima activity não ser exibida até que esse método seja finalizado. Seguido por onResume() se a activity voltar para a frente ou onStop() se ela se tornar inivisível ao usuário.
![Page 32: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/32.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Chamado quando uma activity perde a visibilidade para o usuário, devido outra activity ser resumida e estar na frente desta. Ou seja, ocorre quando outra activity for iniciada ou quando esta activity estiver sendo finalizada. Seguida pelo onRestart() se essa activity estiver voltando para interagir com o usuário ou onDestroy() se a atividade estiver sendo encerrada.
![Page 33: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/33.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Chamada após a activity ser parada e antes de ser reiniciada. Sempre seguida por onStart().
![Page 34: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/34.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma A chamada final que você
receberá antes que a acitivity seja destruída ou finalizada. Isso pode acontecer porque, de fato, a activity está sendo encerrada (alguem chamou o finish() nela) ou porque o sistema está temporariamente destruindo a instância da activity para aumentar o espaço de memória. Você pode distinguir entre esses cenários com o método isFinishing()
![Page 35: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/35.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma Running -> onPause() -> onStop()
Activity - Ciclo de vida
![Page 36: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/36.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma onCreate() -> onStart() -> onResume()
Running
Activity - Ciclo de vida
![Page 37: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/37.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma onPause()
running
onResume ()
Activity - Ciclo de vida
![Page 38: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/38.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
onPause() -> onStop() -> onDestroy()
onRestart() -> onStart() -> onResume() - running
![Page 39: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/39.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
activity_main.xml
![Page 40: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/40.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
MainActivity.java
![Page 41: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/41.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Referências LECHETA, Ricardo R. Google Android para Tablets –
Aprenda a desenvolver aplicações para o Android – De smartphones a tablets.1. ed. São Paulo: Novatec Editora, 2012.
GARGENTA, Marko. Learning Android – Bulding Applications for the Android Market.1. ed. Sebastopol: O’ Reilly Media, 2011.
![Page 42: Desenvolvimento Android p1](https://reader035.vdocuments.mx/reader035/viewer/2022081604/58784b881a28ab68198b5765/html5/thumbnails/42.jpg)
G
eorg
e N
unes
– N
TI G
rupo
Ceu
ma
Próxima etapa
Fragments, Intent, IntentFilter, Estruturação de pacotes, RoboGuice.