introdução a plataforma android

Post on 11-Jun-2015

206 Views

Category:

Presentations & Public Speaking

0 Downloads

Preview:

Click to see full reader

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

Dêmora Bruna Sousa

Édipo da Silva Souza

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.

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

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.

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.

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

Criação de um Virtual

Device • Window > AVD Manager

• Apete o botão New...

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.

• 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.

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

poderemos visualizar o layout da aplicação:

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.

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

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.

Uma nova

activity • Para criar uma nova

activity, é necessário

implementar uma

subclasse de Activity

e sobrescrever alguns

métodos.

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.

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” />

Chamando a Activity • Uma activity pode ser chamada utilizando o

método startActivity()

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

startActivity(i);

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.

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.

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

horizontal ou vertical.

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

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

relação ao RelativeLayout pai.

ListView • Mostra uma lista de itens.

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

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

• 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.

Mini-Web-Browser • Estrutura

• Interface.

• Activity.

• Listener.

• Permissões.

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

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)

Mini-Web-Browser • XML da Interface

Mini-Web-Browser • Activity

• Bloco de variáveis para podermos

fazer referencia aos

componentes.

• Comandos de configuração no

onCreate.

Mini-Web-Browser • Activity

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

respectivas variáveis de referência.

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

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.

Mini-Web-Browser • Activity

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

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

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.

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.

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.

Mini-Web-Browser • Funciona!

Mini-Mp3-Player • Estrutura

• Interface.

• Activity.

• Classe Filtro Mp3.

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

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)

• XML da Interface

Mini-Mp3-Player • Activity

• Bloco de variáveis para

podermos fazer referencia

aos componentes.

• Comandos de configuração no

onCreate.

Mini-Mp3-Player • Activity

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

respectivas variáveis de referência.

Mini-Mp3-Player • Activity

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

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.

Mini-Mp3-Player • Activity

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

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

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.

Mini-Mp3-Player • Activity

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

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.

Mini-Mp3-Player • Funciona!

top related