SlideShare uma empresa Scribd logo
1 de 58
Baixar para ler offline
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.
Aplicações Exemplo
• Mini-Web-Browser
• Mini-Mp3-Player
Projeto hospedado no Google Code.
http://code.google.com/p/mini-web-browser-exemplo
Projeto hospedado no Google Code.
http://code.google.com/p/mini-mp3-player/
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
MyWebViewClien
te()
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!
Aplicações Exemplo
• Mini-Web-Browser
• Mini-Mp3-Player
Projeto hospedado no Google Code.
http://code.google.com/p/mini-web-browser-exemplo
Projeto hospedado no Google Code.
http://code.google.com/p/mini-mp3-player/
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!

Mais conteúdo relacionado

Mais procurados

Aulas Google Android
Aulas Google AndroidAulas Google Android
Aulas Google AndroidIury Teixeira
 
Introdução ao android e plataforma android
Introdução ao android e plataforma androidIntrodução ao android e plataforma android
Introdução ao android e plataforma androidJuarez Junior
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidJosé Alexandre Macedo
 
Minicurso de Android
Minicurso de AndroidMinicurso de Android
Minicurso de AndroidEdgar Eler
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneHenrique Perticarati
 
Capítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldCapítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldMarcio Palheta
 
Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Rudson Lima
 
Minicurso Android Ronildo Oliveira
Minicurso Android  Ronildo OliveiraMinicurso Android  Ronildo Oliveira
Minicurso Android Ronildo OliveiraRonildo Oliveira
 
Seminário SD - Ambiente de Desenvolvimento para Android
Seminário SD - Ambiente de Desenvolvimento para AndroidSeminário SD - Ambiente de Desenvolvimento para Android
Seminário SD - Ambiente de Desenvolvimento para AndroidWilliam Higino
 
Layouts e multiplas activities
Layouts e multiplas activitiesLayouts e multiplas activities
Layouts e multiplas activitiesCalebeMiquissene
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Jose Berardo
 
Introducao a Linguagem Kotlin
Introducao a Linguagem KotlinIntroducao a Linguagem Kotlin
Introducao a Linguagem KotlinCalebeMiquissene
 
2017 08-11 - Androidos V - Minicurso - Introdução ao android
2017 08-11 - Androidos V - Minicurso - Introdução ao android2017 08-11 - Androidos V - Minicurso - Introdução ao android
2017 08-11 - Androidos V - Minicurso - Introdução ao androidMessias Batista
 

Mais procurados (20)

Aulas Google Android
Aulas Google AndroidAulas Google Android
Aulas Google Android
 
Android Aula 5
Android Aula 5Android Aula 5
Android Aula 5
 
Introdução ao android e plataforma android
Introdução ao android e plataforma androidIntrodução ao android e plataforma android
Introdução ao android e plataforma android
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento Android
 
Minicurso de Android
Minicurso de AndroidMinicurso de Android
Minicurso de Android
 
Apresentação android
Apresentação androidApresentação android
Apresentação android
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Android - Conceito e Arquitetura
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e Arquitetura
 
Android Aula 3
Android Aula 3Android Aula 3
Android Aula 3
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
 
Capítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorldCapítulo 01 - Fundamentos de Android e o HelloWorld
Capítulo 01 - Fundamentos de Android e o HelloWorld
 
Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?Desenvolvimento Android, por onde começar?
Desenvolvimento Android, por onde começar?
 
Minicurso Android Ronildo Oliveira
Minicurso Android  Ronildo OliveiraMinicurso Android  Ronildo Oliveira
Minicurso Android Ronildo Oliveira
 
Seminário SD - Ambiente de Desenvolvimento para Android
Seminário SD - Ambiente de Desenvolvimento para AndroidSeminário SD - Ambiente de Desenvolvimento para Android
Seminário SD - Ambiente de Desenvolvimento para Android
 
Layouts e multiplas activities
Layouts e multiplas activitiesLayouts e multiplas activities
Layouts e multiplas activities
 
Curso de Google Android - Aula 1
Curso de Google Android - Aula 1Curso de Google Android - Aula 1
Curso de Google Android - Aula 1
 
Android Aula 4
Android Aula 4Android Aula 4
Android Aula 4
 
Introducao a Linguagem Kotlin
Introducao a Linguagem KotlinIntroducao a Linguagem Kotlin
Introducao a Linguagem Kotlin
 
2017 08-11 - Androidos V - Minicurso - Introdução ao android
2017 08-11 - Androidos V - Minicurso - Introdução ao android2017 08-11 - Androidos V - Minicurso - Introdução ao android
2017 08-11 - Androidos V - Minicurso - Introdução ao android
 

Destaque

Componentização e padrões de projeto e interface em Android
Componentização e padrões de projeto e interface em AndroidComponentização e padrões de projeto e interface em Android
Componentização e padrões de projeto e interface em Androidwelingtonms
 
Padrões de projeto para o Android - Interação para desenvolvedores
Padrões de projeto para o Android - Interação para desenvolvedoresPadrões de projeto para o Android - Interação para desenvolvedores
Padrões de projeto para o Android - Interação para desenvolvedoresGustavo Bitencourt
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSAna Morales
 
Primeiros passos no iOS com Objective-C
Primeiros passos no iOS com Objective-CPrimeiros passos no iOS com Objective-C
Primeiros passos no iOS com Objective-Cosnipso
 
Desenvolvendo para iOS em linux
Desenvolvendo para iOS em linuxDesenvolvendo para iOS em linux
Desenvolvendo para iOS em linuxErisvaldo Junior
 
Desenvolvimento de Apps e Games para iOS - Parte 2
Desenvolvimento de Apps e Games para iOS - Parte 2Desenvolvimento de Apps e Games para iOS - Parte 2
Desenvolvimento de Apps e Games para iOS - Parte 2Erisvaldo Junior
 
Sistema Operacional Móvel iOS
Sistema Operacional Móvel iOSSistema Operacional Móvel iOS
Sistema Operacional Móvel iOSDj Black
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional AndroidLucas Damasceno
 
Plataforma iOS
Plataforma iOSPlataforma iOS
Plataforma iOSernandesjr
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma AndroidNatanael Fonseca
 
Sistema Operativo iOS
Sistema Operativo iOSSistema Operativo iOS
Sistema Operativo iOSjatzen01
 
IOS sistema operacional
IOS sistema operacionalIOS sistema operacional
IOS sistema operacionalHamburg Süd
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSTenshiDam
 
Trabalho de informatica - Sistema Operacional iOS
Trabalho de informatica - Sistema Operacional iOSTrabalho de informatica - Sistema Operacional iOS
Trabalho de informatica - Sistema Operacional iOSnadilei
 
Principales características de windows
Principales características de windowsPrincipales características de windows
Principales características de windowsazrahim
 

Destaque (19)

Componentização e padrões de projeto e interface em Android
Componentização e padrões de projeto e interface em AndroidComponentização e padrões de projeto e interface em Android
Componentização e padrões de projeto e interface em Android
 
Padrões de projeto para o Android - Interação para desenvolvedores
Padrões de projeto para o Android - Interação para desenvolvedoresPadrões de projeto para o Android - Interação para desenvolvedores
Padrões de projeto para o Android - Interação para desenvolvedores
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOS
 
Primeiros passos no iOS com Objective-C
Primeiros passos no iOS com Objective-CPrimeiros passos no iOS com Objective-C
Primeiros passos no iOS com Objective-C
 
Desenvolvendo para iOS em linux
Desenvolvendo para iOS em linuxDesenvolvendo para iOS em linux
Desenvolvendo para iOS em linux
 
Desenvolvimento de Apps e Games para iOS - Parte 2
Desenvolvimento de Apps e Games para iOS - Parte 2Desenvolvimento de Apps e Games para iOS - Parte 2
Desenvolvimento de Apps e Games para iOS - Parte 2
 
Sistema Operacional Móvel iOS
Sistema Operacional Móvel iOSSistema Operacional Móvel iOS
Sistema Operacional Móvel iOS
 
Google android pdf
Google android pdfGoogle android pdf
Google android pdf
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Plataforma iOS
Plataforma iOSPlataforma iOS
Plataforma iOS
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOS
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
 
Sistema Operativo iOS
Sistema Operativo iOSSistema Operativo iOS
Sistema Operativo iOS
 
Sistema Operacional iOS
Sistema Operacional iOSSistema Operacional iOS
Sistema Operacional iOS
 
IOS sistema operacional
IOS sistema operacionalIOS sistema operacional
IOS sistema operacional
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOS
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Trabalho de informatica - Sistema Operacional iOS
Trabalho de informatica - Sistema Operacional iOSTrabalho de informatica - Sistema Operacional iOS
Trabalho de informatica - Sistema Operacional iOS
 
Principales características de windows
Principales características de windowsPrincipales características de windows
Principales características de windows
 

Semelhante a Introdução a Plataforma Android

Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
 
Aula01 - introdução, Activity
Aula01 - introdução,  ActivityAula01 - introdução,  Activity
Aula01 - introdução, ActivityArthur Emanuel
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaGPrimola
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework MobileIldyone Martins
 
APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)Walanem Figueiredo
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao AndroidBruno Lui
 
Desenvolvimento android
Desenvolvimento androidDesenvolvimento android
Desenvolvimento androidDiego Keller
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidMessias Batista
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaMessias Batista
 
Android Palestra
Android PalestraAndroid Palestra
Android PalestraRenato
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Androidjgbirk
 
Aula02 android hands_on
Aula02 android hands_onAula02 android hands_on
Aula02 android hands_onRoberson Alves
 
Configurando o ambiente para desenvolvimento Android
Configurando o ambiente para desenvolvimento AndroidConfigurando o ambiente para desenvolvimento Android
Configurando o ambiente para desenvolvimento AndroidCalebeMiquissene
 

Semelhante a Introdução a Plataforma Android (20)

Apresentação Google Android
Apresentação Google AndroidApresentação Google Android
Apresentação Google Android
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
 
Aula01 - introdução, Activity
Aula01 - introdução,  ActivityAula01 - introdução,  Activity
Aula01 - introdução, Activity
 
Apresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno CottaApresentacao android por Júlio Cesar Bueno Cotta
Apresentacao android por Júlio Cesar Bueno Cotta
 
Android
AndroidAndroid
Android
 
Phonegap - Framework Mobile
Phonegap - Framework MobilePhonegap - Framework Mobile
Phonegap - Framework Mobile
 
APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)APRESENTACAO WALANEM ANDROID (1)
APRESENTACAO WALANEM ANDROID (1)
 
Android - Notas de aula
Android - Notas de aulaAndroid - Notas de aula
Android - Notas de aula
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Apostilaandroidfatecnormal
ApostilaandroidfatecnormalApostilaandroidfatecnormal
Apostilaandroidfatecnormal
 
Desenvolvimento android
Desenvolvimento androidDesenvolvimento android
Desenvolvimento android
 
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do AndroidPalestra Iniciando o desenvolvimento de aplicativos com o Club do Android
Palestra Iniciando o desenvolvimento de aplicativos com o Club do Android
 
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoaO novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
O novo desenvolvedor android conceitos básicos e a comunidade em joão pessoa
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Android Palestra
Android PalestraAndroid Palestra
Android Palestra
 
Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Android
 
GSOIII - INTRODUÇÃO AO ANDROID
GSOIII - INTRODUÇÃO AO ANDROIDGSOIII - INTRODUÇÃO AO ANDROID
GSOIII - INTRODUÇÃO AO ANDROID
 
Aula02 android hands_on
Aula02 android hands_onAula02 android hands_on
Aula02 android hands_on
 
Configurando o ambiente para desenvolvimento Android
Configurando o ambiente para desenvolvimento AndroidConfigurando o ambiente para desenvolvimento Android
Configurando o ambiente para desenvolvimento Android
 
Android
AndroidAndroid
Android
 

Mais de Édipo Souza

Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...
Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...
Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...Édipo Souza
 
Android, Gradle & Dependecies
Android, Gradle & DependeciesAndroid, Gradle & Dependecies
Android, Gradle & DependeciesÉdipo Souza
 
Android studio build variants
Android studio build variantsAndroid studio build variants
Android studio build variantsÉdipo Souza
 
Testing android apps with espresso
Testing android apps with espressoTesting android apps with espresso
Testing android apps with espressoÉdipo Souza
 
Next Step, Android Studio!
Next Step, Android Studio!Next Step, Android Studio!
Next Step, Android Studio!Édipo Souza
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisÉdipo Souza
 
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...Édipo Souza
 
Android - Frameworks de Testes
Android - Frameworks de TestesAndroid - Frameworks de Testes
Android - Frameworks de TestesÉdipo Souza
 
Android - Frameworks para Gráficos
Android - Frameworks para GráficosAndroid - Frameworks para Gráficos
Android - Frameworks para GráficosÉdipo Souza
 
Logging Patterns & Anti-Patterns
Logging Patterns & Anti-PatternsLogging Patterns & Anti-Patterns
Logging Patterns & Anti-PatternsÉdipo Souza
 
Android - Frameworks de Persistência
Android - Frameworks de PersistênciaAndroid - Frameworks de Persistência
Android - Frameworks de PersistênciaÉdipo Souza
 
Framework MVC - vRaptor
Framework MVC - vRaptorFramework MVC - vRaptor
Framework MVC - vRaptorÉdipo Souza
 
XP - eXtreme Programming
XP - eXtreme ProgrammingXP - eXtreme Programming
XP - eXtreme ProgrammingÉdipo Souza
 

Mais de Édipo Souza (13)

Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...
Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...
Estudo comparativo das linguagens kotlin e java no desenvolvimento de aplicac...
 
Android, Gradle & Dependecies
Android, Gradle & DependeciesAndroid, Gradle & Dependecies
Android, Gradle & Dependecies
 
Android studio build variants
Android studio build variantsAndroid studio build variants
Android studio build variants
 
Testing android apps with espresso
Testing android apps with espressoTesting android apps with espresso
Testing android apps with espresso
 
Next Step, Android Studio!
Next Step, Android Studio!Next Step, Android Studio!
Next Step, Android Studio!
 
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias DigitaisApresentação de minha Monografia do curso de Sistema e Mídias Digitais
Apresentação de minha Monografia do curso de Sistema e Mídias Digitais
 
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
UMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO MULTIPLATAFORMA PAR...
 
Android - Frameworks de Testes
Android - Frameworks de TestesAndroid - Frameworks de Testes
Android - Frameworks de Testes
 
Android - Frameworks para Gráficos
Android - Frameworks para GráficosAndroid - Frameworks para Gráficos
Android - Frameworks para Gráficos
 
Logging Patterns & Anti-Patterns
Logging Patterns & Anti-PatternsLogging Patterns & Anti-Patterns
Logging Patterns & Anti-Patterns
 
Android - Frameworks de Persistência
Android - Frameworks de PersistênciaAndroid - Frameworks de Persistência
Android - Frameworks de Persistência
 
Framework MVC - vRaptor
Framework MVC - vRaptorFramework MVC - vRaptor
Framework MVC - vRaptor
 
XP - eXtreme Programming
XP - eXtreme ProgrammingXP - eXtreme Programming
XP - eXtreme Programming
 

Introdução a Plataforma Android

  • 1. Dêmora Bruna Sousa Édipo da Silva Souza
  • 2. 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.
  • 3.
  • 4. 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
  • 5. 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.
  • 6. 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.
  • 7.
  • 8. 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).
  • 9. Criação de um Virtual Device • Window > AVD Manager • Apete o botão New...
  • 10. 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.
  • 11.
  • 12. • 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.
  • 13. • Ao abrir o arquivo res > layout > main.xml, poderemos visualizar o layout da aplicação:
  • 14. 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.
  • 15. 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).
  • 16. 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.
  • 17. Uma nova activity • Para criar uma nova activity, é necessário implementar uma subclasse de Activity e sobrescrever alguns métodos.
  • 18. 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.
  • 19. 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” />
  • 20. Chamando a Activity • Uma activity pode ser chamada utilizando o método startActivity() Intent i = new Intent(this, NomeActivity.class); startActivity(i);
  • 21.
  • 22. 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.
  • 23.
  • 24. 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.
  • 25. LinearLayout • Alinha todos os elementos em uma unica direção, horizontal ou vertical.
  • 26. RelativeLayout • A posição de cada elemento é especificado em relação a posicao dos elementos irmãos ou em relação ao RelativeLayout pai.
  • 27. ListView • Mostra uma lista de itens.
  • 28. GridView • Exibe itens em uma grade bidimensional, rolável.
  • 29. 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);
  • 30. • 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.
  • 31. Aplicações Exemplo • Mini-Web-Browser • Mini-Mp3-Player Projeto hospedado no Google Code. http://code.google.com/p/mini-web-browser-exemplo Projeto hospedado no Google Code. http://code.google.com/p/mini-mp3-player/
  • 32. Mini-Web-Browser • Estrutura • Interface. • Activity. • Listener. • Permissões.
  • 33. 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
  • 34. 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)
  • 36. Mini-Web-Browser • Activity • Bloco de variáveis para podermos fazer referencia aos componentes. • Comandos de configuração no onCreate.
  • 37. Mini-Web-Browser • Activity • Método de configuração dos componentes para suas respectivas variáveis de referência.
  • 38. • 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 MyWebViewClien te()
  • 39. 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.
  • 40. Mini-Web-Browser • Activity • Método onClick(View v), verifica qual botão o chamou e toma a devida ação para ele.
  • 41. 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.
  • 42. 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.
  • 43. 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.
  • 45. Aplicações Exemplo • Mini-Web-Browser • Mini-Mp3-Player Projeto hospedado no Google Code. http://code.google.com/p/mini-web-browser-exemplo Projeto hospedado no Google Code. http://code.google.com/p/mini-mp3-player/
  • 46. Mini-Mp3-Player • Estrutura • Interface. • Activity. • Classe Filtro Mp3.
  • 47. 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
  • 48. 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)
  • 49. • XML da Interface
  • 50. Mini-Mp3-Player • Activity • Bloco de variáveis para podermos fazer referencia aos componentes. • Comandos de configuração no onCreate.
  • 51. Mini-Mp3-Player • Activity • Método de configuração dos componentes para suas respectivas variáveis de referência.
  • 52. Mini-Mp3-Player • Activity • Método de leitura das músicas no cartão de memória.
  • 53. 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.
  • 54. Mini-Mp3-Player • Activity • Método onClick(View v), verifica qual botão o chamou e toma a devida ação para ele.
  • 55. 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.
  • 56. Mini-Mp3-Player • Activity • Método para passar e para voltar música.
  • 57. 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.