Desenvolvimento Android p1

Post on 13-Jan-2017

227 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

Transcript

Desenvolvimento Android

George Nunes

Parte 1

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

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Arquitetura Android

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Máquinas Virtuais

Java - Dalvik

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Máquinas Virtuais

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.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Application Framework

Responsável por renderizar a UI.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Application Framework

Responsável pela instalação e remoção de aplicativos.

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.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Application Framework

Componente responsável por compartilhar dados entre aplicações.

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.

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.

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.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Application Framework

Mecanismo de troca de mensagens entre as aplicações.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Ambientes de Desenvolvimento

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

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

First App

Imagem tela de criação de Primeiro App

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

First App

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

First App

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

First App

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

First App

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;

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Support Appcompact – Exemplo

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;

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;

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Activity - Ciclo de vida

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.

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.

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.

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.

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.

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().

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()

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma Running -> onPause() -> onStop()

Activity - Ciclo de vida

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma onCreate() -> onStart() -> onResume()

Running

Activity - Ciclo de vida

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma onPause()

running

onResume ()

Activity - Ciclo de vida

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

onPause() -> onStop() -> onDestroy()

onRestart() -> onStart() -> onResume() - running

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

activity_main.xml

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

MainActivity.java

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.

G

eorg

e N

unes

– N

TI G

rupo

Ceu

ma

Próxima etapa

Fragments, Intent, IntentFilter, Estruturação de pacotes, RoboGuice.

top related