introdução a plataforma android

58
Dêmora Bruna Sousa Édipo da Silva Souza

Upload: edipo-souza

Post on 11-Jun-2015

205 views

Category:

Presentations & Public Speaking


0 download

DESCRIPTION

Workshop ministrado em 10/10/2012 durante o Media Week II promovido pelo curso de Sistemas e Mídias Digitais na Universidade Federal do Ceará.

TRANSCRIPT

Page 1: Introdução a Plataforma Android

Dêmora Bruna Sousa

Édipo da Silva Souza

Page 2: Introdução a Plataforma Android

O que é Android

exatamente? • Android é uma pilha de software que inclui um sistema

operacional, um middleware e aplicações chaves.

• Ele foi projetado com amplo suporte ao

desenvolvimento de aplicativos por parte de terceiros.

• Desenvolvedores que almejem criar aplicativos para

essa plataforma possuem acesso a mesma API utilizada

na criação dos aplicativos nativos do Android. Isso

permite o desenvolvimento de aplicativos bastante

flexíveis e que usam recursos avançados do sistema.

Page 3: Introdução a Plataforma Android
Page 4: Introdução a Plataforma Android

Ferramentas utilizadas • Para o desenvolvimento de aplicações Android

utilizaremos as seguintes ferramentas:

1. JDK (Java Development Kit)

2. Eclipse

3. Android SDK (Android Standard Development Kit)

4. ADT (Android Development Tools) para o Eclipse

Page 5: Introdução a Plataforma Android

Instalação do ADT • Help > Install New Software e em seguida aperte o

botão Add.

• Window > Preferences e depois Android. No campo SDK Location, deve ser colocado o caminho onde instalação do Android SDK foi realizada.

Page 6: Introdução a Plataforma Android

Visão geral do ambiente ADT

• O plugin ADT é uma ferramenta de apoio muito

poderosa que permite o controle minucioso de um

dispositivo Android, quer seja ele emulado ou não.

Entre suas funcionalidades, podemos citar:

emulação de GPS, recebimento de chamadas e de

SMS, acesso ao diretório de arquivos e captura de

tela do dispositivo, etc.

Page 7: Introdução a Plataforma Android
Page 8: Introdução a Plataforma Android

Download da versão 2.3 • No menu superior do Eclipse, escolha Window >

Android SDK Manager.

• Selecione para instalação os itens Tools e SDK

Platform dentro de Android, e 2.3.3 (API10).

Page 9: Introdução a Plataforma Android

Criação de um Virtual

Device • Window > AVD Manager

• Apete o botão New...

Page 10: Introdução a Plataforma Android

Hello World • Tendo o seu ambiente

de desenvolvimento

configurado, a criação

de um primeiro

aplicativo Android é

bastante simples:

1. Acesse o menu

File > New > Android

Project.

Page 11: Introdução a Plataforma Android
Page 12: Introdução a Plataforma Android

• O projeto de sua primeira aplicação foi criado com sucesso. Agora já é possível visualizar o projeto no canto esquerdo da tela.

• Os principais diretórios e arquivos dessa estrutura são:

• src: Pasta que conterá o código-fonte Java escrito pelo desenvolvedor.

• gen: Esse diretório contem código-fonte gerado

automaticamente pelo eclipse.

• res: Diretório onde todos os recursos (imagens, arquivos em geral, etc...) do aplicativo são armazenados.

• AndroidManifest.xml: Arquivo onde metadados da sua aplicação serão informados. Aqui vão informações como, por exemplo, as permissões que o aplicativo necessita do sistema funcionar corretamente.

Page 13: Introdução a Plataforma Android

• Ao abrir o arquivo res > layout > main.xml,

poderemos visualizar o layout da aplicação:

Page 14: Introdução a Plataforma Android

Executando a aplicação 1. Click com o

botão direito do

mouse na raiz da

estrutura do

projeto.

2. Selecione Run As

> Android

Application.

Page 15: Introdução a Plataforma Android

Activity • Activity é um tipo de classe do framework Android

que provê uma tela (interface) com a qual o

usuário interage. Comumente essas classes podem

utilizar arquivos XML de layout para definir suas

telas. A maioria das aplicações conterá múltiplas

activities fracamente acopladas, sendo uma a sua

inicial (tela inicial do aplicativo).

Page 16: Introdução a Plataforma Android

Activity • O fluxo comum em um programa se dá a partir de

activities que iniciam novas acitivities. Quando

uma activity é iniciada, a anterior para de

executar e entra em uma pilha. O botão “back”

presente nos dispositivo Android permite que o

usuário seja capaz de voltar activities.

Page 17: Introdução a Plataforma Android

Uma nova

activity • Para criar uma nova

activity, é necessário

implementar uma

subclasse de Activity

e sobrescrever alguns

métodos.

Page 18: Introdução a Plataforma Android

Adicionando layout • Clique com o botão direito do mouse no código-fonte de

sua Activity e selecione Source > Override/Implement Methods... . Marque o item onCreate(Bundle) e aperte o botão Ok.

• Agora, dentro do diretório res/layout do projeto, crie uma copia do arquivo main.xml e renomeie como mylayout.xml.

• Dentro do método onCreate(), faça uma chamada ao método setContentView() passando R.layout.mylayout como parâmetro.

Page 19: Introdução a Plataforma Android

Declarando • Para que a activity seja executada pela aplicação é

necessário declará-la no AndroidManifest.xml.

• O trecho de código abaixo deve ser inserido dentro

da tag <application>:

<activity android:name=”.NomeDaActivityCriada” />

Page 20: Introdução a Plataforma Android

Chamando a Activity • Uma activity pode ser chamada utilizando o

método startActivity()

Intent i = new Intent(this, NomeActivity.class);

startActivity(i);

Page 21: Introdução a Plataforma Android
Page 22: Introdução a Plataforma Android

Ciclo de Vida • Durante a vida de uma activity, muitos eventos

podem ocorrer. Ações do usuário como apertar os

botões “home” e “back”, abrir novas telas

(activities), ou o recebimento de chamadas como

receber uma ligação, etc., geram vários eventos

que podem ser capturados dentro de uma activity.

Page 23: Introdução a Plataforma Android
Page 24: Introdução a Plataforma Android

Interface com usuário • Uma interface de usuário em uma aplicação

Android é um conjunto de objetos do tipo View.

Todo e qualquer componente de interface gráfica é

uma subclasse de View. Por exemplo: EditText,

TextView, Button, LinearLayout, ImageView.

• Em Interfaces de usuário (UI) existem views

chamadas layout. Um layout define como views

que estarão dentro dele serão dispostas.

Page 25: Introdução a Plataforma Android

LinearLayout • Alinha todos os elementos em uma unica direção,

horizontal ou vertical.

Page 26: Introdução a Plataforma Android

RelativeLayout • A posição de cada elemento é especificado em

relação a posicao dos elementos irmãos ou em

relação ao RelativeLayout pai.

Page 27: Introdução a Plataforma Android

ListView • Mostra uma lista de itens.

Page 28: Introdução a Plataforma Android

GridView • Exibe itens em uma grade bidimensional, rolável.

Page 29: Introdução a Plataforma Android

AndroidManifest • Toda aplicação necessita de um arquivo

AndroidManifest.xml. Esse arquivo contém

informações sobre sua aplicação que o Android

necessita para que seu código seja executado

corretamente e em segurança. Entre as principais

informações que estão ou podem estar presentes

no AndroidManifest.xml, podemos citar:

• Nome do pacote Java da aplicação (serve como

identificador único da aplicação);

Page 30: Introdução a Plataforma Android

• Descrição dos componentes que sua aplicação contem

(ex.: activities e services);

• Permissões de usuário que seu aplicativo necessita

para rodar em um dispositivo (ex.: acesso a internet

e localização de usuário);

• Declaração de qual API Android mínima é necessária

para rodar o aplicativo.

Page 32: Introdução a Plataforma Android

Mini-Web-Browser • Estrutura

• Interface.

• Activity.

• Listener.

• Permissões.

Page 33: Introdução a Plataforma Android

Mini-Web-Browser • Estrutura.

• src:Activity e Classes em Geral

• gen: Classe R gerada automaticamente

• assets: Arquivos extras (não temos)

• bin: Classes e Apk compilados

• libs: Bibliotecas no projeto (não temos)

• res/drawable: Imagens em cada resolução

• res/layout: XML das Interfaces

• res/menu: XML dos Menus

• res/values: XML com Strings e Styles

Page 34: Introdução a Plataforma Android

Mini-Web-Browser • Interface:

Nossa interface será composta por:

• Botão Voltar; (id = ibVoltar)

• Botão Home; (id = ibHome)

• Botão Ir; (id = ibIR)

• Editor de Texto URL; (id = etURL)

• WebView; (id = browser)

Page 35: Introdução a Plataforma Android

Mini-Web-Browser • XML da Interface

Page 36: Introdução a Plataforma Android

Mini-Web-Browser • Activity

• Bloco de variáveis para podermos

fazer referencia aos

componentes.

• Comandos de configuração no

onCreate.

Page 37: Introdução a Plataforma Android

Mini-Web-Browser • Activity

• Método de configuração dos componentes para suas

respectivas variáveis de referência.

Page 38: Introdução a Plataforma Android

• Activity

• Adicionado variáveis de referência dos componentes, configurações da activity no onCreate e método de configuração dos componentes.

• Mas ainda esta faltando a classe MyWebViewCliente()

Page 39: Introdução a Plataforma Android

Mini-Web-Browser • Activity

• Aqui temos a classe MyWebViewCliente que é

responsável por gerenciar o componente WebView e

nela implementamos uma ação para ocorrer após a

página ser carregada.

Page 40: Introdução a Plataforma Android

Mini-Web-Browser • Activity

• Método onClick(View v), verifica qual botão o

chamou e toma a devida ação para ele.

Page 41: Introdução a Plataforma Android

Mini-Web-Browser • Listener

• Adicionamos uma constante URL_INICIAL e

implementaremos a interface OnKeyListener para

gerenciarmos com o ENTER no campo de texto o

carregamento da página.

Page 42: Introdução a Plataforma Android

Mini-Web-Browser • Listener

• O método sobrescrito onKey é chamado toda vez

que digitamos algo no campo de texto. Então

verificamos se foi um ENTER e se foi, mandamos

carregar a URL digitada.

Page 43: Introdução a Plataforma Android

Mini-Web-Browser • Permissão

• Por fim, falta somente darmos permissão para o aplicativo acessar a internet. Basta inserir o comando no arquivo androidManifest.xml.

Page 44: Introdução a Plataforma Android

Mini-Web-Browser • Funciona!

Page 46: Introdução a Plataforma Android

Mini-Mp3-Player • Estrutura

• Interface.

• Activity.

• Classe Filtro Mp3.

Page 47: Introdução a Plataforma Android

Mini-Mp3-Player • Estrutura.

• src: Activity e Classes em Geral

• gen: Classe R gerada automaticamente

• assets:Arquivos extras (não temos)

• bin: Classes e Apk compilados

• libs: Bibliotecas no projeto (não temos)

• res/drawable: Imagens em cada resolução

• res/layout: XML das Interfaces

• res/menu: XML dos Menus

• res/values: XML com Strings e Styles

Page 48: Introdução a Plataforma Android

Mini-Mp3-Player • InterfaceInterface.

Nossa interface será composta por:

• Texto MusicaAtual; (id = txMusicaAtual)

• Botão Anterior; (id = ibAnterior)

• Botão Play; (id = ibPlay)

• Botão Pause; (id = ibPause)

• Botão Stop; (id = ibStop)

• Botão Proxima; (id = ibProxima)

• ListView list; (id = @android:id/list)

Page 49: Introdução a Plataforma Android

• XML da Interface

Page 50: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Bloco de variáveis para

podermos fazer referencia

aos componentes.

• Comandos de configuração no

onCreate.

Page 51: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Método de configuração dos componentes para suas

respectivas variáveis de referência.

Page 52: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Método de leitura das músicas no cartão de memória.

Page 53: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Para termos o gerenciamento automático da Lista,

estendemos nossa activity de ListActivity.

• E Sobre-escrevemos o método onListItemClick() para

tomarmos uma ação quando um item for selecionado.

Page 54: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Método onClick(View v), verifica qual botão o

chamou e toma a devida ação para ele.

Page 55: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Método para carregar e tocar música. O método

OnCompletion é chamado pelo Listener quando a música

terminar de tocar.

Page 56: Introdução a Plataforma Android

Mini-Mp3-Player • Activity

• Método para passar e para voltar música.

Page 57: Introdução a Plataforma Android

Mini-Mp3-Player • Classe Filtro Mp3

• Adicionamos uma constante URL_INICIAL e

implementaremos a interface OnKeyListener para

gerenciarmos com o ENTER no campo de texto o

carregamento da página.

Page 58: Introdução a Plataforma Android

Mini-Mp3-Player • Funciona!