SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
Copyright © 2016 Janynne Gomes 1
Módulo 1: Fundamentos da Computação Móvel
Aula: Introdução ao Android
Desenvolvimento para Dispositivos Móveis
Copyright © 2016 Janynne Gomes 2
Janynne Gomes
● Bacharel em Sistemas de Informação
● Pós graduando Engenharia de Software e Gerência de
Projetos
● Professora de programação mobile na ETEIT – Escola
Técnica da Univale – http://univale.br/eteit
● Site: http://janynnegomes.com
● E-mail: janynne.gomes@univale.br
Desenvolvimento para Dispositivos Móveis
Copyright © 2016 Janynne Gomes 3
●
Cronograma de aulas do módulo 1
– Semana 1
● Aula: Evolução da Computação Móvel (2 h/a)
● Aula: Características dos dispositivos móveis (2 h/a)
– Semana 2
● Aula: Exercícios em sala sobre aulas 1 e 2 (2 h/a)
● Aula: Arquiteturas de aplicações móveis (2 h/a)
– Semana 3
● Aula: Introdução ao Android (2 h/a)
● Aula: Introdução ao Java (2 h/a)
●
Duração: 12 h/a
Módulo 1: Fundamentos da Computação Móvel
Copyright © 2016 Janynne Gomes 4
●
Leituras Sugeridas no módulo 1
● LEE, VALENTINO;Aplicações móveis: arquitetura projeto e
desenvolvimento. Tradução: Amaury Bentes & Deborah Rüdiger;
revisão técnica: Renato Haddad. São Paulo, Pearson Education
do Brasil, 2005. ISBN 85-346-1540-3 1.
●
BERNAL, Paulo Sérgio M.Comunicações móveis: tecnologias e
aplicações. São Paulo: Érica, c2002. 204 p. ISBN 8571948984
Módulo 1: Fundamentos da Computação Móvel
Copyright © 2016 Janynne Gomes 5
●
Conteúdo da aula
– Introdução
– Versões do Android
– Configuração do ambiente
●
Android SDK
●
Android Studio
●
Emulador do Android
●
ADB (Android Debug Bridge)
– Conceitos básicos
●
Estrutura de projeto
●
Arquivo AndroidManifest.xml
●
Arquivos de Layout
●
Tratamento de eventos
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 6
●
Introdução
– O Android é o sistema operacional móvel do
Google e é lider mundial nesse segmento.
– OHA (Open Handset Alliance) é um grupo
formado por grandes empresas como Intel,
Samsung, LG, Motorola, Sony Ericson, HTC,
ASUS, Acer e Dell que definiu uma plataforma
única a aberta para celulares, isso favorece a
criação de aplicações corporativas, resultando
dessa união esforços no desenvolvimento do
Android junto ao Google.
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 7
●
Introdução
– Disponível para plataformas:
●
TVs (Google TV)
●
Smartphones
●
Tablets
● Relógios (Android Wear)
●
Óculos (Google Glass)
●
Carros (Android Auto)
Aula: Introdução ao Android
Google TV
Android Wear
Android Auto
Copyright © 2016 Janynne Gomes 8
●
Introdução
– Baseado no kernel do Linux
– É de código aberto e
qualquer pessoa pode alterar e
usar de graça
– Possui a Máquina Virtual Dalvik
(para versões inferiores a 4.4)
– Possui a Máquina Virtual ART
(para versões iguais ou
superiores a 4.4)
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 9
●
Introdução
Aula: Introdução ao Android
x
Dalvik ART (Android Runtime)
● Compilação JIT - Just in
time
Dalvik
● Compilação AOT – Ahead of
time
● Redução do consumo de
memória
Copyright © 2016 Janynne Gomes 10
●
Google Play
– Loja oficial para vender aplicativos Android
– Taxa de $25 para criar conta de
desenvolvedor (tem que ter cartão
internacional)
– Aplicativos pagos são retidos 30% do valor
para o Google
– Endereço:
http://play.google.com/apps/publish
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 11
● Versões do Android
– 2008 - 1.0
– 2009(Abril) – Android 1.5 (Cupcake)
– 2009(Setembro) – Android 1.6 (Donut)
– 2009(Outubro) – Android 2 e 2.1 (Eclair)
– 2010(Maio) – Android 2.2 (Froyo)
– 2010(Dezembro) – Android 2.3 (Gingerbread)
– 2011(Fevereiro) – Android 3 (Honeycomb)
– 2011(Outubro) – Android 4 (Ice Cream Sandwich)
– 2012(Junho) – Android 4.1 (Jelly Bean)
– 2013(Outubro) – Android 4.4 (KitKat)
– 2014(Novembro) – Android 5 (Lollipop)
– 2015(Agosto) – Android 6 (Marshmallow)
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 12
Configuração do ambiente
de desenvolvimento
Aula: Introdução ao Android
Android SDK
Android Studio
Emulador do Android
ADB (Android Debug Bridge)
Copyright © 2016 Janynne Gomes 13
●
Android SDK
– Conjunto de bibliotecas para
desenvolver aplicativos
Android
– Já vem na instalação do
Android Studio
– Baixar em http://developer.android.com/sdk
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 14
●
Android Studio
– IDE oficial para
desenvolvimento Android
– Compilação através do
Gradle
– Baixar em
http://developer.android.com/sdk
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 15
●
Emulador
– Android Virtual Device
(AVD)
– Simula exatamente a
versão desejada do
Android
– Simula características de
hardware e
configurações
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 16
●
Android Debug Brigde (ADB)
– Ferramenta que controla
o emulador
– Aplicação cliente-
servidor
– Cada emulador iniciado
se conecta ao ADB em
uma porta específica
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 17
●
Android Debug Brigde (ADB)
– Principais comandos
● kill-server: Encerra o processo do ADB
– Ex.: adb kill­server
● start-server: Inicia um processo novo do ADB
– Ex.: adb start­server
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 18
●
Android Debug Brigde (ADB)
– Principais comandos
● devices: Exibe uma lista de dispositivos e
emuladores Android conectados ao computador
– Exemplo: adb devices
● start-server: Inicia um processo novo do ADB
– Exemplo: adb start­server
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 19
●
Exercício: Criação de um projeto
Android
– Siga o tutorial no meu 
site 
● http://janynnegomes.com/port
al/criando-o-primeiro-projet
o-no-android-studio/
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 20
Conceitos Básicos
Aula: Introdução ao Android
Estrutura de projeto
Arquivo AndroidManifest.xml
Arquivos de Layout
Tratamento de eventos
Copyright © 2016 Janynne Gomes 21
●
Estrutura de Projeto
– Existem várias formas de visualizar a
organização de arquivos dentro do
Android Studio:
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 22
●
Estrutura de Projeto
– Visualizando no modo Android
temos:
●
app/manifests : pasta onde ficam os
arquivos de manifesto(arquivo de
configuração global do aplicativo) do
módulo.
●
app/java: pasta onde ficam os arquivos
de código fonte em Java do módulo.
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 23
● Estrutura de Projeto
– Visualizando no modo Android
temos:
●
app/res: pasta onde ficam os
arquivos de recursos (imagens,
layout, textos, cores) do módulo.
●
Gradle Scripts: pasta onde ficam
os script de configuração do Gradle
para compilação do projeto.
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 24
●
Arquivo AndroidManifest.xml
– Contém todas as configurações
para execução da aplicação.
– Registra todas as
activities(telas) do projeto
– Indica qual tela é a inicial
– Registra as permissões á
recursos externos ao aplicativo
(GPS, internet, arquivos,
contatos e etc)
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 25
●
Arquivo AndroidManifest.xml
– Especifica o ícone á ser
utilizado pelo aplicativo.
– Especifica o nome do
aplicativo
– Especifica o tema Android á
ser utilizado no aplicativo
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 26
●
Arquivos de layout
– Arquivos de extensão e formato xml
que definem a interface gráfica do
aplicativo.
– Os elementos XML devem ser
elementos reconhecidos pelo
Android. Ex.: LinearLayout,
ImageView, TextView.
– Se os elementos não são conteiners
de outros elementos, a declaração
dos mesmos já tem uma barra “/” ao
final da declaração.
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 27
●
Arquivos de layout
– Os atributos dos elementos devem ser
propriedades reconhecidas pelo Java
para os objetos que eles representam.
– A declaração de atributos dos
componentes de interface deve seguir
o formato:
●
android:[nome da propriedade] =
“[valor]”
– A declaração do ID de um elemento
gráfico deve seguir o formato:
●
android:id = “@+id/[valor]”
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 28
●
Arquivos de layout
– O atributo tools:context identifica qual a classe
java vinculada a esse layout
– A largura e altura são definidos em valores
pré-definidos pelo Android:
●
wrap_content : apenas a largura/altura dos
elementos/conteúdo que estão dentro dele.
●
fill_parent e mach_parent: estica até a
largura do elemento no qual ele está
inserido.
– Os valores inteiros de dimensões são usados na
notação dp (densidade de pixels
independente), unidade de medida do Android
para se adequar á diversos aparelhos. Ex: 43dp
e não 43px.
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 29
● Tratamento de eventos
– As ações do usuário podem ser capturadas pelo
aplicativo e disparam eventos conhecidos na
interface. Ex.: clique de botão, edição de
texto, movimentação de uma imagem.
– Cada evento gerado é manipulado pelo
aplicativo quando é criado um método
manipulador para ele.
●
Clique do botão → onClick()
●
Movimentação da imagem → onTouchEvent()
●
Edição de textp → onTextChanged()
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 30
● Tratamento de eventos
– Criando manipulador de forma anônima
●
btnAlteraTexto.setOClickListener(...)
– Implementando interface View.OnClickListener na classe
●
button.setOnClickListener(this)
– Criando um método para cada botão (mais comum de encontrar)
● btnAlteraTexto.setOClickListener(onClickAlteraTexto());
– Vinculando o método através do XML
● android:onClick = “onClickAlteraTexto”
Aula: Introdução ao Android
Copyright © 2016 Janynne Gomes 31
●
Referências
– LECHETA, Ricardo R.;Google Android, Aprenda a criar
aplicações para dispositivos móveis com o Android SDK. São
Paulo, Novatec, 2015. ISBN 978-85-7522-468-7. Páginas 25 a 90.
Aula: Introdução ao Android

Mais conteúdo relacionado

Mais procurados

Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a InternetLeonardo Soares
 
Desenvolvimento Mobile
Desenvolvimento MobileDesenvolvimento Mobile
Desenvolvimento MobileElton Minetto
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareÁlvaro Farias Pinheiro
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento WebSérgio Souza Costa
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional AndroidLucas Damasceno
 
Aula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisAula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisJanynne Gomes
 
Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Ricardo Longa
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linuxRogério Cardoso
 
Modelo de Declaracao do escopo do projeto
Modelo de Declaracao do escopo do projetoModelo de Declaracao do escopo do projeto
Modelo de Declaracao do escopo do projetoFernando Palma
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeansSliedesharessbarbosa
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionaisDaniel Brandão
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 

Mais procurados (20)

Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Introdução ao Android Studio
Introdução ao Android StudioIntrodução ao Android Studio
Introdução ao Android Studio
 
Desenvolvimento Mobile
Desenvolvimento MobileDesenvolvimento Mobile
Desenvolvimento Mobile
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Fundamentos de arquitetura Web
Fundamentos de arquitetura WebFundamentos de arquitetura Web
Fundamentos de arquitetura Web
 
Sistema Operacional Android
Sistema Operacional AndroidSistema Operacional Android
Sistema Operacional Android
 
Aula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveisAula: Características dos dispositivos móveis
Aula: Características dos dispositivos móveis
 
Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)Android - Programação para dispositivos móveis (Aula 1)
Android - Programação para dispositivos móveis (Aula 1)
 
Android Aula 1
Android Aula 1Android Aula 1
Android Aula 1
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linux
 
Front End x Back End
Front End x Back EndFront End x Back End
Front End x Back End
 
Modelo de Declaracao do escopo do projeto
Modelo de Declaracao do escopo do projetoModelo de Declaracao do escopo do projeto
Modelo de Declaracao do escopo do projeto
 
Android
Android Android
Android
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeans
 
Apresentação para aula de HTML básico
Apresentação para aula de HTML básicoApresentação para aula de HTML básico
Apresentação para aula de HTML básico
 
Resumo sistemas operacionais
Resumo sistemas operacionaisResumo sistemas operacionais
Resumo sistemas operacionais
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 

Semelhante a Introdução ao Android

Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para AndroidClaudio Pereira
 
Palestra: Desenvolvendo apps Android
Palestra: Desenvolvendo apps AndroidPalestra: Desenvolvendo apps Android
Palestra: Desenvolvendo apps AndroidJanynne Gomes
 
Desenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidDesenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidMayron Cachina
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 
Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013guisester
 
Primeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidPrimeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidMessias Batista
 
Programação para dispositivos Móveis - Criação de aplicativos - Android Aula...
Programação para dispositivos Móveis - Criação de aplicativos  - Android Aula...Programação para dispositivos Móveis - Criação de aplicativos  - Android Aula...
Programação para dispositivos Móveis - Criação de aplicativos - Android Aula...Diogo Rafael da Silva
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidilegra
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapMayron Cachina
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma AndroidNatanael Fonseca
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Janynne Gomes
 
Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013guisester
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Androidguisester
 

Semelhante a Introdução ao Android (20)

Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para Android
 
Palestra: Desenvolvendo apps Android
Palestra: Desenvolvendo apps AndroidPalestra: Desenvolvendo apps Android
Palestra: Desenvolvendo apps Android
 
Androi studio
Androi studioAndroi studio
Androi studio
 
Desenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com AndroidDesenvolvendo Aplicativos com Android
Desenvolvendo Aplicativos com Android
 
Curso Básico Android - Aula 01
Curso Básico Android - Aula 01Curso Básico Android - Aula 01
Curso Básico Android - Aula 01
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 
Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013Introdução à programação em Android SENAC 17.06.2013
Introdução à programação em Android SENAC 17.06.2013
 
Primeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor androidPrimeiros passos para o novo desenvolvedor android
Primeiros passos para o novo desenvolvedor android
 
Programação para dispositivos Móveis - Criação de aplicativos - Android Aula...
Programação para dispositivos Móveis - Criação de aplicativos  - Android Aula...Programação para dispositivos Móveis - Criação de aplicativos  - Android Aula...
Programação para dispositivos Móveis - Criação de aplicativos - Android Aula...
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
Desenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGapDesenvolvendo para Android com PhoneGap
Desenvolvendo para Android com PhoneGap
 
Introdução à plataforma Android
Introdução à plataforma AndroidIntrodução à plataforma Android
Introdução à plataforma Android
 
3
33
3
 
Android - Notas de aula
Android - Notas de aulaAndroid - Notas de aula
Android - Notas de aula
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Introdução ao Android
Introdução ao AndroidIntrodução ao Android
Introdução ao Android
 
Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)Aula: Resources ( Parte 2)
Aula: Resources ( Parte 2)
 
Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013Introdução à programação em Android - Alcides Maya 16.04.2013
Introdução à programação em Android - Alcides Maya 16.04.2013
 
Introdução a programação em Android
Introdução a programação em AndroidIntrodução a programação em Android
Introdução a programação em Android
 
Apresentação android
Apresentação androidApresentação android
Apresentação android
 

Mais de Janynne Gomes

Aula: Resources ( Parte 1)
Aula: Resources ( Parte 1)Aula: Resources ( Parte 1)
Aula: Resources ( Parte 1)Janynne Gomes
 
Aula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisAula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisJanynne Gomes
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvelJanynne Gomes
 
Aula: Memória Humana e Atenção dentro da IHM
Aula: Memória Humana e Atenção dentro da IHMAula: Memória Humana e Atenção dentro da IHM
Aula: Memória Humana e Atenção dentro da IHMJanynne Gomes
 
Aula: Fatores Humanos e Interatividade na IHM
Aula: Fatores Humanos e Interatividade na IHMAula: Fatores Humanos e Interatividade na IHM
Aula: Fatores Humanos e Interatividade na IHMJanynne Gomes
 
Aula: Princípios de design de interfaces
Aula: Princípios de design de interfacesAula: Princípios de design de interfaces
Aula: Princípios de design de interfacesJanynne Gomes
 
Aula: Tendência das interfaces
Aula: Tendência das interfacesAula: Tendência das interfaces
Aula: Tendência das interfacesJanynne Gomes
 
Aula: Tipos de Interface
Aula: Tipos de InterfaceAula: Tipos de Interface
Aula: Tipos de InterfaceJanynne Gomes
 
Aula: Gerações de interfaces
Aula: Gerações de interfacesAula: Gerações de interfaces
Aula: Gerações de interfacesJanynne Gomes
 
Aula: Estudo sobre usuários dentro da IHM
Aula: Estudo sobre usuários dentro da IHMAula: Estudo sobre usuários dentro da IHM
Aula: Estudo sobre usuários dentro da IHMJanynne Gomes
 
Aula: Evolução das interfaces
Aula: Evolução das interfacesAula: Evolução das interfaces
Aula: Evolução das interfacesJanynne Gomes
 
Emocao e Computacao Afetiva
Emocao e Computacao AfetivaEmocao e Computacao Afetiva
Emocao e Computacao AfetivaJanynne Gomes
 
Lógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoLógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoJanynne Gomes
 
Diagramas de Fluxo de Dados
Diagramas de Fluxo de DadosDiagramas de Fluxo de Dados
Diagramas de Fluxo de DadosJanynne Gomes
 
Estruturas de decisão
Estruturas de decisãoEstruturas de decisão
Estruturas de decisãoJanynne Gomes
 
Palestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalhoPalestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalhoJanynne Gomes
 
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãe
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãeMaria faz bagunça - Uma história contada por Steve e escrita pela mamãe
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãeJanynne Gomes
 
Aula 6 - Prototipação de telas
Aula 6 - Prototipação de telasAula 6 - Prototipação de telas
Aula 6 - Prototipação de telasJanynne Gomes
 
Aula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosAula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosJanynne Gomes
 

Mais de Janynne Gomes (20)

Aula: Resources ( Parte 1)
Aula: Resources ( Parte 1)Aula: Resources ( Parte 1)
Aula: Resources ( Parte 1)
 
Aula - Activity
Aula  -  ActivityAula  -  Activity
Aula - Activity
 
Aula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveisAula - Arquiteturas de aplicações móveis
Aula - Arquiteturas de aplicações móveis
 
Aula: Evolução da computação móvel
Aula: Evolução da computação móvelAula: Evolução da computação móvel
Aula: Evolução da computação móvel
 
Aula: Memória Humana e Atenção dentro da IHM
Aula: Memória Humana e Atenção dentro da IHMAula: Memória Humana e Atenção dentro da IHM
Aula: Memória Humana e Atenção dentro da IHM
 
Aula: Fatores Humanos e Interatividade na IHM
Aula: Fatores Humanos e Interatividade na IHMAula: Fatores Humanos e Interatividade na IHM
Aula: Fatores Humanos e Interatividade na IHM
 
Aula: Princípios de design de interfaces
Aula: Princípios de design de interfacesAula: Princípios de design de interfaces
Aula: Princípios de design de interfaces
 
Aula: Tendência das interfaces
Aula: Tendência das interfacesAula: Tendência das interfaces
Aula: Tendência das interfaces
 
Aula: Tipos de Interface
Aula: Tipos de InterfaceAula: Tipos de Interface
Aula: Tipos de Interface
 
Aula: Gerações de interfaces
Aula: Gerações de interfacesAula: Gerações de interfaces
Aula: Gerações de interfaces
 
Aula: Estudo sobre usuários dentro da IHM
Aula: Estudo sobre usuários dentro da IHMAula: Estudo sobre usuários dentro da IHM
Aula: Estudo sobre usuários dentro da IHM
 
Aula: Evolução das interfaces
Aula: Evolução das interfacesAula: Evolução das interfaces
Aula: Evolução das interfaces
 
Emocao e Computacao Afetiva
Emocao e Computacao AfetivaEmocao e Computacao Afetiva
Emocao e Computacao Afetiva
 
Lógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de SeleçãoLógica de Programação - Estruturas de Seleção
Lógica de Programação - Estruturas de Seleção
 
Diagramas de Fluxo de Dados
Diagramas de Fluxo de DadosDiagramas de Fluxo de Dados
Diagramas de Fluxo de Dados
 
Estruturas de decisão
Estruturas de decisãoEstruturas de decisão
Estruturas de decisão
 
Palestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalhoPalestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalho
 
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãe
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãeMaria faz bagunça - Uma história contada por Steve e escrita pela mamãe
Maria faz bagunça - Uma história contada por Steve e escrita pela mamãe
 
Aula 6 - Prototipação de telas
Aula 6 - Prototipação de telasAula 6 - Prototipação de telas
Aula 6 - Prototipação de telas
 
Aula 5 - Dicionário de Dados
Aula 5 - Dicionário de DadosAula 5 - Dicionário de Dados
Aula 5 - Dicionário de Dados
 

Introdução ao Android

  • 1. Copyright © 2016 Janynne Gomes 1 Módulo 1: Fundamentos da Computação Móvel Aula: Introdução ao Android Desenvolvimento para Dispositivos Móveis
  • 2. Copyright © 2016 Janynne Gomes 2 Janynne Gomes ● Bacharel em Sistemas de Informação ● Pós graduando Engenharia de Software e Gerência de Projetos ● Professora de programação mobile na ETEIT – Escola Técnica da Univale – http://univale.br/eteit ● Site: http://janynnegomes.com ● E-mail: janynne.gomes@univale.br Desenvolvimento para Dispositivos Móveis
  • 3. Copyright © 2016 Janynne Gomes 3 ● Cronograma de aulas do módulo 1 – Semana 1 ● Aula: Evolução da Computação Móvel (2 h/a) ● Aula: Características dos dispositivos móveis (2 h/a) – Semana 2 ● Aula: Exercícios em sala sobre aulas 1 e 2 (2 h/a) ● Aula: Arquiteturas de aplicações móveis (2 h/a) – Semana 3 ● Aula: Introdução ao Android (2 h/a) ● Aula: Introdução ao Java (2 h/a) ● Duração: 12 h/a Módulo 1: Fundamentos da Computação Móvel
  • 4. Copyright © 2016 Janynne Gomes 4 ● Leituras Sugeridas no módulo 1 ● LEE, VALENTINO;Aplicações móveis: arquitetura projeto e desenvolvimento. Tradução: Amaury Bentes & Deborah Rüdiger; revisão técnica: Renato Haddad. São Paulo, Pearson Education do Brasil, 2005. ISBN 85-346-1540-3 1. ● BERNAL, Paulo Sérgio M.Comunicações móveis: tecnologias e aplicações. São Paulo: Érica, c2002. 204 p. ISBN 8571948984 Módulo 1: Fundamentos da Computação Móvel
  • 5. Copyright © 2016 Janynne Gomes 5 ● Conteúdo da aula – Introdução – Versões do Android – Configuração do ambiente ● Android SDK ● Android Studio ● Emulador do Android ● ADB (Android Debug Bridge) – Conceitos básicos ● Estrutura de projeto ● Arquivo AndroidManifest.xml ● Arquivos de Layout ● Tratamento de eventos Aula: Introdução ao Android
  • 6. Copyright © 2016 Janynne Gomes 6 ● Introdução – O Android é o sistema operacional móvel do Google e é lider mundial nesse segmento. – OHA (Open Handset Alliance) é um grupo formado por grandes empresas como Intel, Samsung, LG, Motorola, Sony Ericson, HTC, ASUS, Acer e Dell que definiu uma plataforma única a aberta para celulares, isso favorece a criação de aplicações corporativas, resultando dessa união esforços no desenvolvimento do Android junto ao Google. Aula: Introdução ao Android
  • 7. Copyright © 2016 Janynne Gomes 7 ● Introdução – Disponível para plataformas: ● TVs (Google TV) ● Smartphones ● Tablets ● Relógios (Android Wear) ● Óculos (Google Glass) ● Carros (Android Auto) Aula: Introdução ao Android Google TV Android Wear Android Auto
  • 8. Copyright © 2016 Janynne Gomes 8 ● Introdução – Baseado no kernel do Linux – É de código aberto e qualquer pessoa pode alterar e usar de graça – Possui a Máquina Virtual Dalvik (para versões inferiores a 4.4) – Possui a Máquina Virtual ART (para versões iguais ou superiores a 4.4) Aula: Introdução ao Android
  • 9. Copyright © 2016 Janynne Gomes 9 ● Introdução Aula: Introdução ao Android x Dalvik ART (Android Runtime) ● Compilação JIT - Just in time Dalvik ● Compilação AOT – Ahead of time ● Redução do consumo de memória
  • 10. Copyright © 2016 Janynne Gomes 10 ● Google Play – Loja oficial para vender aplicativos Android – Taxa de $25 para criar conta de desenvolvedor (tem que ter cartão internacional) – Aplicativos pagos são retidos 30% do valor para o Google – Endereço: http://play.google.com/apps/publish Aula: Introdução ao Android
  • 11. Copyright © 2016 Janynne Gomes 11 ● Versões do Android – 2008 - 1.0 – 2009(Abril) – Android 1.5 (Cupcake) – 2009(Setembro) – Android 1.6 (Donut) – 2009(Outubro) – Android 2 e 2.1 (Eclair) – 2010(Maio) – Android 2.2 (Froyo) – 2010(Dezembro) – Android 2.3 (Gingerbread) – 2011(Fevereiro) – Android 3 (Honeycomb) – 2011(Outubro) – Android 4 (Ice Cream Sandwich) – 2012(Junho) – Android 4.1 (Jelly Bean) – 2013(Outubro) – Android 4.4 (KitKat) – 2014(Novembro) – Android 5 (Lollipop) – 2015(Agosto) – Android 6 (Marshmallow) Aula: Introdução ao Android
  • 12. Copyright © 2016 Janynne Gomes 12 Configuração do ambiente de desenvolvimento Aula: Introdução ao Android Android SDK Android Studio Emulador do Android ADB (Android Debug Bridge)
  • 13. Copyright © 2016 Janynne Gomes 13 ● Android SDK – Conjunto de bibliotecas para desenvolver aplicativos Android – Já vem na instalação do Android Studio – Baixar em http://developer.android.com/sdk Aula: Introdução ao Android
  • 14. Copyright © 2016 Janynne Gomes 14 ● Android Studio – IDE oficial para desenvolvimento Android – Compilação através do Gradle – Baixar em http://developer.android.com/sdk Aula: Introdução ao Android
  • 15. Copyright © 2016 Janynne Gomes 15 ● Emulador – Android Virtual Device (AVD) – Simula exatamente a versão desejada do Android – Simula características de hardware e configurações Aula: Introdução ao Android
  • 16. Copyright © 2016 Janynne Gomes 16 ● Android Debug Brigde (ADB) – Ferramenta que controla o emulador – Aplicação cliente- servidor – Cada emulador iniciado se conecta ao ADB em uma porta específica Aula: Introdução ao Android
  • 17. Copyright © 2016 Janynne Gomes 17 ● Android Debug Brigde (ADB) – Principais comandos ● kill-server: Encerra o processo do ADB – Ex.: adb kill­server ● start-server: Inicia um processo novo do ADB – Ex.: adb start­server Aula: Introdução ao Android
  • 18. Copyright © 2016 Janynne Gomes 18 ● Android Debug Brigde (ADB) – Principais comandos ● devices: Exibe uma lista de dispositivos e emuladores Android conectados ao computador – Exemplo: adb devices ● start-server: Inicia um processo novo do ADB – Exemplo: adb start­server Aula: Introdução ao Android
  • 19. Copyright © 2016 Janynne Gomes 19 ● Exercício: Criação de um projeto Android – Siga o tutorial no meu  site  ● http://janynnegomes.com/port al/criando-o-primeiro-projet o-no-android-studio/ Aula: Introdução ao Android
  • 20. Copyright © 2016 Janynne Gomes 20 Conceitos Básicos Aula: Introdução ao Android Estrutura de projeto Arquivo AndroidManifest.xml Arquivos de Layout Tratamento de eventos
  • 21. Copyright © 2016 Janynne Gomes 21 ● Estrutura de Projeto – Existem várias formas de visualizar a organização de arquivos dentro do Android Studio: Aula: Introdução ao Android
  • 22. Copyright © 2016 Janynne Gomes 22 ● Estrutura de Projeto – Visualizando no modo Android temos: ● app/manifests : pasta onde ficam os arquivos de manifesto(arquivo de configuração global do aplicativo) do módulo. ● app/java: pasta onde ficam os arquivos de código fonte em Java do módulo. Aula: Introdução ao Android
  • 23. Copyright © 2016 Janynne Gomes 23 ● Estrutura de Projeto – Visualizando no modo Android temos: ● app/res: pasta onde ficam os arquivos de recursos (imagens, layout, textos, cores) do módulo. ● Gradle Scripts: pasta onde ficam os script de configuração do Gradle para compilação do projeto. Aula: Introdução ao Android
  • 24. Copyright © 2016 Janynne Gomes 24 ● Arquivo AndroidManifest.xml – Contém todas as configurações para execução da aplicação. – Registra todas as activities(telas) do projeto – Indica qual tela é a inicial – Registra as permissões á recursos externos ao aplicativo (GPS, internet, arquivos, contatos e etc) Aula: Introdução ao Android
  • 25. Copyright © 2016 Janynne Gomes 25 ● Arquivo AndroidManifest.xml – Especifica o ícone á ser utilizado pelo aplicativo. – Especifica o nome do aplicativo – Especifica o tema Android á ser utilizado no aplicativo Aula: Introdução ao Android
  • 26. Copyright © 2016 Janynne Gomes 26 ● Arquivos de layout – Arquivos de extensão e formato xml que definem a interface gráfica do aplicativo. – Os elementos XML devem ser elementos reconhecidos pelo Android. Ex.: LinearLayout, ImageView, TextView. – Se os elementos não são conteiners de outros elementos, a declaração dos mesmos já tem uma barra “/” ao final da declaração. Aula: Introdução ao Android
  • 27. Copyright © 2016 Janynne Gomes 27 ● Arquivos de layout – Os atributos dos elementos devem ser propriedades reconhecidas pelo Java para os objetos que eles representam. – A declaração de atributos dos componentes de interface deve seguir o formato: ● android:[nome da propriedade] = “[valor]” – A declaração do ID de um elemento gráfico deve seguir o formato: ● android:id = “@+id/[valor]” Aula: Introdução ao Android
  • 28. Copyright © 2016 Janynne Gomes 28 ● Arquivos de layout – O atributo tools:context identifica qual a classe java vinculada a esse layout – A largura e altura são definidos em valores pré-definidos pelo Android: ● wrap_content : apenas a largura/altura dos elementos/conteúdo que estão dentro dele. ● fill_parent e mach_parent: estica até a largura do elemento no qual ele está inserido. – Os valores inteiros de dimensões são usados na notação dp (densidade de pixels independente), unidade de medida do Android para se adequar á diversos aparelhos. Ex: 43dp e não 43px. Aula: Introdução ao Android
  • 29. Copyright © 2016 Janynne Gomes 29 ● Tratamento de eventos – As ações do usuário podem ser capturadas pelo aplicativo e disparam eventos conhecidos na interface. Ex.: clique de botão, edição de texto, movimentação de uma imagem. – Cada evento gerado é manipulado pelo aplicativo quando é criado um método manipulador para ele. ● Clique do botão → onClick() ● Movimentação da imagem → onTouchEvent() ● Edição de textp → onTextChanged() Aula: Introdução ao Android
  • 30. Copyright © 2016 Janynne Gomes 30 ● Tratamento de eventos – Criando manipulador de forma anônima ● btnAlteraTexto.setOClickListener(...) – Implementando interface View.OnClickListener na classe ● button.setOnClickListener(this) – Criando um método para cada botão (mais comum de encontrar) ● btnAlteraTexto.setOClickListener(onClickAlteraTexto()); – Vinculando o método através do XML ● android:onClick = “onClickAlteraTexto” Aula: Introdução ao Android
  • 31. Copyright © 2016 Janynne Gomes 31 ● Referências – LECHETA, Ricardo R.;Google Android, Aprenda a criar aplicações para dispositivos móveis com o Android SDK. São Paulo, Novatec, 2015. ISBN 978-85-7522-468-7. Páginas 25 a 90. Aula: Introdução ao Android