Programação para a Plataforma Android Aula 13. Localização

Tamanho: px
Começar a partir da página:

Download "Programação para a Plataforma Android Aula 13. Localização"

Transcrição

1 Programação para a Plataforma Android Aula 13 Localização O que são serviços baseados em localização? Como usar a API de mapas do Google? Como sobrepor diferentes visões a um mapa? Como integrar o mapa aos demais componentes gráficos? Quais visões podem ser acopladas à mapas? Como usar serviços de localização sem mapas?

2 Onde Estou? Que recursos um smart phone pode usar para saber a própria localização?

3 Provedores de Localização Android suporta sensores que captam sinais de satélites do sistema Geo Posi(oning Systems (GPS). Android suporta sensores que determinam a localização do aparelho móvel via triangulação com redes de telefonia celular. Android também suporta provedores de localização baseados em redes wi fi.

4 Onde estou? Serviço de localização: Escreva uma aplicação que imprima em uma caixa de texto simples a localização do aparelho móvel, e o servidor de localização utilizado para determiná-la.

5 Permissões <?xml version="1.0" encoding="uv 8"?> <manifest xmlns:android="hzp://schemas.android.com/apk/res/android" package="com.aula13" android:versioncode="1" android:versionname="1.0"> <uses permission android:name="android.permission.access_coarse_location" /> <uses permission android:name="android.permission.access_fine_location" /> <applicabon <acbvity android:name=".aulaacbvity13" <intent filter> <acbon android:name="android.intent.acbon.main" /> <category android:name="android.intent.category.launcher" /> </intent filter> </acbvity> </applicabon> <uses sdk android:minsdkversion="2" /> </manifest> Nós já vimos um tipo de permissão antes. Qual?

6 Layout Informações de localização serão impressas em uma caixa de texto. Essas informações podem ocupar uma string maior que os limites da caixa de texto. Mas, por agora, já sabemos como construir esse layout!

7 main.xml ScrollView Passemos agora à atividade <?xml version="1.0" encoding="uv 8"?> <ScrollView xmlns:android="hzp://schemas.android.com/apk/res/android" android:orientabon="verbcal" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" /> </ScrollView>

8 Abvidade de Localização public class AulaAcbvity13 extends Acbvity implements Loca.onListener public void oncreate(bundle savedinstancestate) protected void onresume() {... O que deveria ser feito onresume? protected void onpause() {... AulaAcbvity13.java Quais eventos de localização devem existir? E o que deveria ser feito em onpause?

9 onresume/onpause AulaAcbvity13.java private Loca.onManager mgr; private String protected void onresume() { super.onresume(); mgr.requestlocabonupdates(best, 15000, 1, protected void onpause() { super.onpause(); mgr.removeupdates(this); Que tipo de objeto é esse? E por que onpause foi implementado assim? O que serão esses parâmetros? O que onresume está fazendo? Mas como será o método oncreate?

10 public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); Temos de implementar esse log. O que um objeto desse sabe fazer? mgr = (LocabonManager) getsystemservice(location_service); output = (TextView) findviewbyid(r.id.output); log("locabon providers:"); dumpproviders(); Criteria criteria = new Criteria(); best = mgr.getbestprovider(criteria, true); log("\nprovedor escolhido: " + best); log("\nlocalizacao (comecando com ulbma conhecida):"); Loca.on locabon = mgr.getlastknownlocabon(best); dumplocabon(locabon); O que se passa aqui?

11 Eventos de Localização A nossa abvidade é também um escutador de eventos de localização. Quais seriam os eventos de localização? AulaAcbvity13.java public class AulaAcbvity13 extends Acbvity implements Loca.onListener {

12 Eventos de Localização public void onlocabonchanged(locabon locabon) { ; public void onproviderdisabled(string provider) { ; public void onproviderenabled(string provider) { ; Como seria a implementação de cada um desses métodos? public void onstatuschanged(string provider, int status, Bundle extras) { ; AulaAcbvity13.java

13 Eventos de Localização public void onlocabonchanged(locabon locabon) { dumplocabon(locabon); public void onproviderdisabled(string provider) { log("\nprovedor inoperante: " + provider); public void onproviderenabled(string provider) { log("\nprovedor operante: " + provider); O que é esse parâmetro status? Temos um arranjo para criar! public void onstatuschanged(string provider, int status, Bundle extras) { log("\no estado do provedor mudou: " + provider + ", status=" + S[status] + ", extras=" + extras);

14 Eventos de Localização public void onlocabonchanged(locabon locabon) { dumplocabon(locabon); public void onproviderdisabled(string provider) { log("\nprovedor inoperante: " + provider); private stabc final String[] S = { "out of service", public void onproviderenabled(string provider) { "temporarily unavailable", log("\nprovedor operante: " + provider); "available" Temos de implementar os outros métodos de nossa atividade. Vocês lembram quais são eles? }; public void onstatuschanged(string provider, int status, Bundle extras) { log("\no estado do provedor mudou: " + provider +, status=" + S[status] + ", extras=" + extras);

15 AulaAcbvity13.java Os dump s private void log(string string) { output.append(string + "\n"); private void dumplocabon(locabon locabon) { if (locabon == null) log("\nlocabon[unknown]"); else log("\n" + locabon.tostring()); private void dumpproviders() { List<String> providers = mgr.getallproviders(); for (String provider : providers) { dumpprovider(provider); Esse método, dumpprovider, ainda precisa ser implementado.

16 AulaAcbvity13.java Informações de Localização private void dumpprovider(string provider) { LocabonProvider info = mgr.getprovider(provider); StringBuilder builder = new StringBuilder(); Novamente, precisamos definir alguns arranjos. builder.append("locabonprovider[").append("name=").append(info.getname()).append(",enabled=").append(mgr.isproviderenabled(provider)).append( ",getaccuracy=").append(a[info.getaccuracy() + 1]).append( ",getpowerrequirement=").append(p[info.getpowerrequirement() + 1]).append(",hasMonetaryCost=").append(info.hasMonetaryCost()).append( ",requirescell=").append(info.requirescell()).append( ",requiresnetwork=").append(info.requiresnetwork()).append( ",requiressatellite=").append(info.requiressatellite()).append( ",supportsalbtude=").append(info.supportsalbtude()).append( ",supportsbearing=").append(info.supportsbearing()).append( ",supportsspeed=").append(info.supportsspeed()).append("]"); log(builder.tostring()); O que é isso?

17 Informações de Localização private sta.c final String[] A = { "invalid", private void dumpprovider(string provider) { LocabonProvider info = mgr.getprovider(provider); "n/a", StringBuilder builder = new StringBuilder(); "fine", builder.append("locabonprovider[").append("name=").append(info.getname()) "coarse".append(",enabled=").append(mgr.isproviderenabled(provider)).append( ",getaccuracy=").append(a[info.getaccuracy() + 1]).append( }; ",getpowerrequirement=").append(p[info.getpowerrequirement() + 1]).append(",hasMonetaryCost=").append(info.hasMonetaryCost()).append( private sta.c final String[] P = { ",requirescell=").append(info.requirescell()).append( "invalid", ",requiresnetwork=").append(info.requiresnetwork()).append( "n/a", ",requiressatellite=").append(info.requiressatellite()).append( ",supportsalbtude=").append(info.supportsalbtude()).append( "low", ",supportsbearing=").append(info.supportsbearing()).append( "medium", ",supportsspeed=").append(info.supportsspeed()).append("]"); "high" log(builder.tostring()); };

18 Emulador Se tentarmos carregar a aplicação, não obteremos nenhuma informação de localização. Podemos passar essas informações pelo emulador, na tela Emulator Control View. Window > Show View > Other... > Android > Emulator Control

19 Simulando a Localização Se tentarmos carregar a aplicação, não obteremos nenhuma informação de localização. Podemos passar essas informações pelo emulador, na tela Emulator Control View. Window > Show View > Other... > Android > Emulator Control

20 Locabon Tracker Rastreador de caminho: Implemente um rastreador de caminho, que grave a sequência de posições percorridas pelo dispositivo móvel, e que imprima a distância total percorrida. Como será esse layout?

21 <LinearLayout xmlns:android="h;p://schemas.android.com/apk/res/android" android:orientabon="ver(cal" android:layout_width="fill_parent" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" <EditText android:focusable="false" android:layout_width="fill_parent" android:layout_height="fill_parent"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" <EditText android:focusable="false" android:layout_width="fill_parent" android:layout_height="fill_parent"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" <EditText android:focusable="false" android:layout_width="fill_parent" android:layout_height="fill_parent"/> </LinearLayout> tracker.xml Locabon Tracker Qual o modelo dessa aplicação?

22 Tracker.java Tracker public class Tracker extends Acbvity implements LocabonListener { private LocabonManager mgr; private List<Locabon> track; private String best; private EditText lat; private EditText lon; private EditText dist; O que é preciso ser feito no método oncreate?

23 Tracker.java oncreate public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.tracker); track = new ArrayList<Locabon>(); mgr = (LocabonManager) getsystemservice(location_service); Criteria criteria = new Criteria(); best = mgr.getbestprovider(criteria, true); this.lat = (EditText) findviewbyid(r.id.latname); this.lon = (EditText) findviewbyid(r.id.lonname); this.dist = (EditText) findviewbyid(r.id.distname); updateloca.on(); Como seria este método de atualizar a localização?

24 Atualizando a Localização Tracker.java private void updatelocabon() { Locabon locabon = mgr.getlastknownlocabon(best); lat.settext(string.valueof(locabon.getlabtude())); lon.settext(string.valueof(locabon.getlongitude())); dist.settext(computepathlength() + "m"); this.track.add(locabon); E como podemos calcular a distância percorrida?

25 Tracker.java Calculando distâncias private CharSequence computepathlength() { if (track.size() == 0) { return "0"; else { Locabon last = track.get(0); double dist = 0.0; for (int i = 1; i < this.track.size(); i++) { Locabon newloc = this.track.get(i); dist += last.distanceto(newloc); last = newloc; return String.valueOf(dist); Precisamos algora implementar os métodos de eventos. Vocês lembram que métodos são esses? Na verdade, precisamos de escrever somente um!

26 Eventos de Localização public void onlocabonchanged(locabon locabon) { ; O que escrevemos aqui? public void onproviderdisabled(string provider) { public void onproviderenabled(string provider) { public void onstatuschanged(string provider, int status, Bundle extras) {

27 Eventos de Localização public void onlocabonchanged(locabon locabon) { this.updatelocabon(); public void onproviderdisabled(string provider) { Mesmo que não usemos os métodos, precisamos public void onproviderenabled(string provider) { implementá-los. Por que? E o que normalmente se faz para evitar esse public void onstatuschanged(string provider, transtorno? int status, Bundle extras) {

28 Poupando Recursos protected void onresume() { super.onresume(); mgr.requestlocabonupdates(best, 15000, 1, protected void onpause() { super.onpause(); mgr.removeupdates(this); E se quiséssemos calcular a velocidade de deslocamento, o que precisaria ser feito?

29 Probleminha Besta Tracker.java private void updatelocabon() { Locabon locabon = mgr.getlastknownlocabon(best); lat.settext(string.valueof(locabon.getlabtude())); lon.settext(string.valueof(locabon.getlongitude())); dist.settext(computepathlength() + "m"); this.track.add(locabon); Notem que a distância somente aparece quando enviamos valores para o emulador duas ou mais vezes. A posição original não está sendo levada em consideração quando computamos a distância. Como resolver esse problema?

30 Easy Fix Tracker.java private void updatelocabon() { Locabon locabon = mgr.getlastknownlocabon(best); lat.settext(string.valueof(locabon.getlabtude())); lon.settext(string.valueof(locabon.getlongitude())); this.track.add(locabon); dist.settext(computepathlength() + "m"); Estamos computando a distância antes de inserirmos as coordenadas da última localização.

PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB

PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB PROPOSTA DE UM PADRÃO DE PROJETO PARA ANDROID UTILIZANDO A WEB Aluno: Pedro Paulo S. Freitas Orientador: Ricardo Augusto Rabelo Sumário Introdução Motivação e Justificativa Trabalhos relacionados Plataforma

Leia mais

Programação para a Plataforma Android Aula 7. Mul$mídia

Programação para a Plataforma Android Aula 7. Mul$mídia Programação para a Plataforma Android Aula 7 Mul$mídia Como executar aplicações que contêm músicas? Como abrir vídeos em Android? Quais formatos de músicas são aceitos? Quais formatos de vídeo? Como o$mizar

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 05 Programando formularios, activities e intents. Dalton Martins dmartins@gmail.com São Paulo, Março, 2012

Leia mais

Programação para a Plataforma Android Aula 16. Fragmentos

Programação para a Plataforma Android Aula 16. Fragmentos Programação para a Plataforma Android Aula 16 Fragmentos O que são fragmentos Como combinar múl?plas visões em uma única tela? Como lidar com telas de tamanhos variados? Como modificar a visão de uma a?vidade

Leia mais

Programação para a Plataforma Android Aula 2. Aula 2 Views

Programação para a Plataforma Android Aula 2. Aula 2 Views Programação para a Plataforma Android Aula 2 Aula 2 Views O que é modelo, visão e controle Como definir layouts gráficos Como Separar visão de modelo Como criar layouts em arquivos XML Como adicionar eventos

Leia mais

Comunicação entre A0vidades

Comunicação entre A0vidades Programação para a Plataforma Android Aula 8 Comunicação entre A0vidades Como invocar uma a0vidade a par0r de outra? Como descrever um serviço em Android? Como duas a0vidades se comunicam? Como abrir uma

Leia mais

Programação para a Plataforma Android Aula 17. Broadcasts

Programação para a Plataforma Android Aula 17. Broadcasts Programação para a Plataforma Android Aula 17 Broadcasts O que são eventos de difusão? Como capturar eventos de chamadas telefônicas? Como verificar o estado da bateria? Como implementar receptores de

Leia mais

Login. Criar uma nova Activity. Login. Luiz Eduardo Guarino de Vasconcelos

Login. Criar uma nova Activity. Login. Luiz Eduardo Guarino de Vasconcelos Criar uma nova Activity Observe no AndroidManifest.xml que foi criada a segunda Activity. Nesse arquivo: - defini-la como a primeira a ser executada (recortar o intent-filter da MainActivity para a Activity)

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Professor Ariel da Silva Dias Desenvolvendo para Android Android Core Uma aplicação Android é formada por um conjunto de componentes; A este conjunto damos o nome de

Leia mais

Comunicação via Sockets

Comunicação via Sockets Programação para a Plataforma Android Aula 9 Comunicação via Sockets O que são sockets? O que são data access objects? Como criar servidores de serviços distribuídos? Aplicações mulb threading simples

Leia mais

Tutorial Android Speech

Tutorial Android Speech Tutorial Android Speech O sistema operacional Android já dispõe de uma funcionalidade interna para síntese e reconhecimento de voz que pode ser incorporado a qualquer aplicação. Essa funcionalidade utiliza

Leia mais

Provedores de Conteúdo

Provedores de Conteúdo Programação para a Plataforma Android Aula 12 Provedores de Conteúdo O que são provedores de conteúdo? Como ler dados de outras aplicações? Como iden@ficar recursos de forma única? Como deixar dados disponíveis

Leia mais

Programação em Java para a Plataforma Android AULA 1. Primeiros Passos

Programação em Java para a Plataforma Android AULA 1. Primeiros Passos Programação em Java para a Plataforma Android AULA 1 Primeiros Passos O que é Android Como é o desenvolvimento de aplicações para esse ambiente O que é preciso para começar a programar ABvidades, o início

Leia mais

Introdução ao Desenvolvimento para Sistema Operacional Android

Introdução ao Desenvolvimento para Sistema Operacional Android Dr. prof.sylvio@fatecriopreto.edu.br Conteúdo: 1) Introdução ao Android e Mercado de Dispositivos Móveis; 2) Plataforma: 2.1) Arquitetura; 2.2) Framework; 2.3) Bibliotecas; 2.4) Android Runtime; 2.5) Linux

Leia mais

Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android. Realização de Dinâmica Hands- On para Construção de uma App Android

Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android. Realização de Dinâmica Hands- On para Construção de uma App Android Apresentação de um Processo Cria4vo de Desenvolvimento de uma App Android Realização de Dinâmica Hands- On para Construção de uma App Android Dr. Eduardo Manuel de Freitas Jorge, PMP Realização de Dinâmica

Leia mais

Armazenamento Persistente de Dados

Armazenamento Persistente de Dados Programação para a Plataforma Android Aula 10 Armazenamento Persistente de Dados Como armazenar as opções de preferência de uma aplicação? Como tocar músicas em uma a@vidade Android? Como armazenar dados

Leia mais

TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS

TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS Uma activity é um componente do aplicativo que fornece uma tela com o qual os usuários podem interagir. Uma aplicação geralmente consiste de múltiplas activities,

Leia mais

Programação de Dispositivos Móveis

Programação de Dispositivos Móveis Aula 07 Programação de Dispositivos Móveis Interface Gráfica ListView com ArrayAdapter Um elemento muito utilizado em aplicativos é a ListView, com ela pode-se criar uma lista de objetos. A partir dos

Leia mais

Programação para a Plataforma Android Aula 11. Banco de Dados

Programação para a Plataforma Android Aula 11. Banco de Dados Programação para a Plataforma Android Aula 11 Banco de Dados Introdução a linguagem SQL O banco de dados SQLite Como criar e manipular um banco de dados em Android Como apresentar dados na tela do aparelho

Leia mais

Navegar entre páginas Necessário o uso de Intent. Intenção de ir a algum lugar, acessar outros recursos, outros apps.

Navegar entre páginas Necessário o uso de Intent. Intenção de ir a algum lugar, acessar outros recursos, outros apps. Navegar entre páginas Necessário o uso de Intent. Intenção de ir a algum lugar, acessar outros recursos, outros apps. Alterar o oncreate dentro de LoginActivity.java, para chamar uma próxima Activity.

Leia mais

Android Layout Manager. Ivan Nicoli

Android Layout Manager. Ivan Nicoli Android Layout Manager Ivan Nicoli Classe View A classe android.view.view é a classe mãe de todos os componentes visuais do Android. Qualquer desenvolvedor pode criar seu próprio componente herdando a

Leia mais

Retrofit. Criar um novo projeto. Selecionar a API. Retrofit para consumir Web Service Luiz Eduardo Guarino de Vasconcelos

Retrofit. Criar um novo projeto. Selecionar a API. Retrofit para consumir Web Service Luiz Eduardo Guarino de Vasconcelos Retrofit Criar um novo projeto Selecionar a API Empty Activity MainActivity Finish. Adicionar Novas Dependências Menu File > Project Structure Modulo app > Aba Dependencies Clique em adicionar (+) no canto

Leia mais

Criando as primeiras telas (Activity)

Criando as primeiras telas (Activity) File > New > New Project Observe o conteúdo dos arquivos MainActivity e activity_main.xml. Alterar strings.xml primeiro app Usar FindUsages para

Leia mais

Módulo 2 - Novas Activities Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Módulo 2 - Novas Activities Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Módulo 2 - Novas Activities Android Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Inserindo a segunda activity Para inserir uma nova activity basta clicar com o botão direito sobre o pacote,

Leia mais

Módulo 4 - Interface Gráfica Gerenciadores de Layout. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Módulo 4 - Interface Gráfica Gerenciadores de Layout. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Módulo 4 - Interface Gráfica Gerenciadores de Layout Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Classe View Todos os componente gráficos são filhos de View Para se criar um novo componente

Leia mais

Avisos e Notificações aos Usuários

Avisos e Notificações aos Usuários Avisos e Notificações aos Usuários Caixa de Diálogos Pequena janela que solicita ao usuário tomar uma decisão ou inserir informações adicionais. Não preenche toda a tela Utilizado em eventos modais, requerem

Leia mais

G-SMS: Protótipo de uma aplicação de envio de SMS georeferenciadas

G-SMS: Protótipo de uma aplicação de envio de SMS georeferenciadas G-SMS: Protótipo de uma aplicação de envio de SMS georeferenciadas Carlos Roberto Bender Acadêmico Mauro Marcelo Mattos - Orientador Roteiro Introdução/Objetivos Fundamentação teórica Desenvolvimento do

Leia mais

Programando Intenções. Prof. Fellipe Aleixo

Programando Intenções. Prof. Fellipe Aleixo Programando Intenções Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Conteúdo Desenvolvimento de uma aplicação para registrar contatos (nome e telefones) e realizar chamadas Intent (intenções) Aplicações

Leia mais

Programação de Dispositivos Móveis

Programação de Dispositivos Móveis Aula 04 Programação de Dispositivos Móveis A Classe Activity É obrigatório que cada activity do projeto esteja declarada no arquivo AndroidManisfest.xml, caso contrário não é possível utilizá-la. Para

Leia mais

Programa de Dispositivos Móveis

Programa de Dispositivos Móveis Aula 02 - Exercício Programa de Dispositivos Móveis PDM - Aula02 - Exercício- Ver 02-04/06/2014 08:56 Criando Aplicação Android (BasicView) Vamos continuar a criar interfaces gráficas (UI) básicas com

Leia mais

Mais Elementos da Interface com o Usuário. Prof. Fellipe Aleixo

Mais Elementos da Interface com o Usuário. Prof. Fellipe Aleixo Mais Elementos da Interface com o Usuário Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Conteúdo Desenvolvimento de uma aplicação para registrar contatos e seus respec?vos telefones Algumas Classes

Leia mais

Log, Ciclo de Vida e Diálogos. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Log, Ciclo de Vida e Diálogos. Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Log, Ciclo de Vida e Diálogos Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Conteúdo Log Classe android.u:l.log LogCat Ciclo de Vida Pilha de a:vidades Métodos e estados da a:vidade Instance State

Leia mais

Módulo 3 - Intenções. SECAP 2014 Prof. Rone Ilídio - UFSJ

Módulo 3 - Intenções. SECAP 2014 Prof. Rone Ilídio - UFSJ Módulo 3 - Intenções SECAP 2014 Prof. Rone Ilídio - UFSJ Intenção é um pedido que uma aplicação faz ao Android O Android executa intenções Um intenção pode ser utilizada para: Uma mensagem para o SO Abrir

Leia mais

Introdução à Programação Android: LocationManager

Introdução à Programação Android: LocationManager Introdução à Programação Android: LocationManager Guilherme Antonio Borges guilhermeborges.pf@gmail.com Apresentação dos Exercícios 1. Criação de uma tela menu simples que acessa através de um evento em

Leia mais

Usando e Gerenciando Activities

Usando e Gerenciando Activities Usando e Gerenciando Activities Ciclo de vida Activity 2 Especificando a execução Especifica a Activity que é ponto principal de entrada de sua aplicação Se a ação MAIN action ou a categoria LAUNCHER não

Leia mais

Computação Móvel Activity (Ref. Cap. 4)

Computação Móvel Activity (Ref. Cap. 4) Universidade Federal de Ouro Preto Departamento de Computação e Sistemas - DECSI Computação Móvel Activity (Ref. Cap. 4) Vicente Amorim vicente.amorim.ufop@gmail.com Sumário * Activity - Classes FragmentActivity

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Aula 2 Vidal. Ronnison Reges 1 1 Análise e Desenvolvimento de Sistemas - Parangaba Centro Universitário Estácio do Ceará 2018 Vidal. Ronnison Reges (Centro Universitário

Leia mais

Android DEFINIÇÕES E CICLO DE VIDA. Prof. Dr. Joaquim assunção.

Android DEFINIÇÕES E CICLO DE VIDA. Prof. Dr. Joaquim assunção. Android DEFINIÇÕES E CICLO DE VIDA Prof. Dr. Joaquim assunção. Parte 1/2 Bases Fundamentos Os aplicativos do Android são programados em linguagem de programação Java ou Kotlin. As ferramentas Android SDK

Leia mais

Trabalhando com Mensagens. File > New > New Project. Uso de mensagens (Toast) Luiz Eduardo Guarino de Vasconcelos

Trabalhando com Mensagens. File > New > New Project. Uso de mensagens (Toast) Luiz Eduardo Guarino de Vasconcelos Trabalhando com Mensagens File > New > New Project Alterando o Título da ActionBar Alterar strings.xml exemplo1 exemplo1 - Guarino

Leia mais

Primeira Aplicação Android Olá Mundo. Prof. Fellipe Aleixo

Primeira Aplicação Android Olá Mundo. Prof. Fellipe Aleixo Primeira Aplicação Android Olá Mundo Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Conteúdo Passo- a- passo de um Projeto Android Conceitos Básicos de uma Aplicação Principais Arquivos Execução da

Leia mais

Programação para a Plataforma Android Aula 4. Objetos Gráficos

Programação para a Plataforma Android Aula 4. Objetos Gráficos Programação para a Plataforma Android Aula 4 Objetos Gráficos Depuração simples: imprimindo eventos Lidando com botões e spinners Carregando múleplas aevidades em uma aplicação O padrão adapter Mostrando

Leia mais

Prof: Ricardo Quintão Site:

Prof: Ricardo Quintão   Site: Prof: Ricardo Quintão email: ricardo.quintao@uva.br Site: www.rgquintao.com.br Vamos agora criar o nosso primeiro projeto Android. Na criação de um projeto novo, o ADT já cria um programa de exemplo que

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Aula 3 Vidal. Ronnison Reges 1 1 Análise e Desenvolvimento de Sistemas - Parangaba Centro Universitário Estácio do Ceará 2018 Vidal. Ronnison Reges (Centro Universitário

Leia mais

Android: Ciclo de vida da Activity

Android: Ciclo de vida da Activity Se sua aplicação estiver em execução e o celular receber uma ligação? O que acontecerá com seu aplicativo? Quais métodos serão executados e em qual ordem? Para respondermos essas perguntas e entendermos

Leia mais

Programa de Dispositivos Móveis

Programa de Dispositivos Móveis Aula 02 Programa de Dispositivos Móveis A Classe Activity A classe Actvity é similar a classe JFrame do Swing representa basicamente uma tela. Quase todas as atividades interagem com o usuário, então ela

Leia mais

Fragments. Criar um novo projeto. Selecionar a API. Navigation Drawer Activity. Fragments. Luiz Eduardo Guarino de Vasconcelos

Fragments. Criar um novo projeto. Selecionar a API. Navigation Drawer Activity. Fragments. Luiz Eduardo Guarino de Vasconcelos Criar um novo projeto Selecionar a API Navigation Drawer Activity MainActivity Finish. Adicionar as Dependências do ButterKnife. butterknife butterknife-compiler. Veja o tutorial do ButterKnife no site.

Leia mais

Android. Interfaces: widgets

Android. Interfaces: widgets Android Interfaces: widgets Relembrando... Após a criação do projeto, será criada uma estrutura de diretórios necessária para um projeto Android. A pasta src contém os fontes das classe que representam

Leia mais

Curso de Android - 2 Novas Activities. SECAP Prof. Rone Ilídio - UFSJ

Curso de Android - 2 Novas Activities. SECAP Prof. Rone Ilídio - UFSJ Curso de Android - 2 Novas Activities SECAP Prof. Rone Ilídio - UFSJ Inserindo a segunda activity Inserindo a segunda activity Criaremos uma aplicação com duas telas onde ao clicar o botão de uma chama-se

Leia mais

HCI Summer Workshop. Android #1. Tiago Guerreiro. tjvg@di.fc.ul.pt

HCI Summer Workshop. Android #1. Tiago Guerreiro. tjvg@di.fc.ul.pt HCI Summer Workshop Android #1 Tiago Guerreiro tjvg@di.fc.ul.pt Introdução Equipa Luis Carriço Tiago Guerreiro Luis Duarte Diogo Marques Gonçalo Gomes Eduardo Matos Nikolay Stanchenko Rafael Nunes Filipe

Leia mais

Android Activity. Ivan Nicoli

Android Activity. Ivan Nicoli Android Activity Ivan Nicoli Activity Representa a tela de uma aplicação Classe filha da classe android.app.activity Deve ser declarada sempre no AndroidManifest.xml Obrigatória a implementação do método

Leia mais

Projeto GoHome Tutorial Sobre o serviço do Google Maps no Android

Projeto GoHome Tutorial Sobre o serviço do Google Maps no Android Projeto GoHome Tutorial Sobre o serviço do Google Maps no Android Moisés Batista Bispo Teresina-PI 1- Breve Descrição Este tutorial tem como objetivo, adicionar de forma simples e prática, um mapa ao seu

Leia mais

Android Banco de Dados. Ivan Nicoli

Android Banco de Dados. Ivan Nicoli Android Banco de Dados Ivan Nicoli SQLite O Android tem suporte ao SQLite (http://www.sqlite.org), um leve e poderoso banco de dados. Cada aplicação pode criar um ou mais banco de dados, que ficam localizados

Leia mais

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler

Desenvolvimento para Android Prá9ca 2. Prof. Markus Endler Desenvolvimento para Android Prá9ca 2 Prof. Markus Endler Criando o primeiro projeto Android Com o ambiente de desenvolvimento preparado, vá em File - > New - > Project... Na janela que abrir, selecione

Leia mais

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ Introdução ao Android SECAP 2014 Prof. Rone Ilídio - UFSJ O que é o Android? Sistema operacional móvel, baseado numa versão modificada do Linux. Código aberto: qualquer pessoa pode baixar e modificar Máquina

Leia mais

Professor: Rogério Benedito de Andrade. Formação:

Professor: Rogério Benedito de Andrade. Formação: Professor: Rogério Benedito de Andrade Formação: Licenciatura em Informática (Fatec) Especialização em Educação (Univap) Bacharel em Computação (Univap) Objetivos: Implementar evento onmapclick Adicionar

Leia mais

============================== Exemplo ListView MainActivity.java

============================== Exemplo ListView MainActivity.java FACULDADE DE TECNOLOGIA SENAC PELOTAS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Tópicos Avançados em ADS Edécio Fernando Iepsen ============================== Exemplo ListView

Leia mais

Android OLÁ MUNDO MÓVEL. Prof. Dr. Joaquim assunção.

Android OLÁ MUNDO MÓVEL. Prof. Dr. Joaquim assunção. Android OLÁ MUNDO MÓVEL Prof. Dr. Joaquim assunção. Parte 1/3 SDK e Android Studio Java SE Development Kit Download and Install JDK 6 http://www.oracle.com/technetwork/java/javase/downloads/index.html

Leia mais

Programação para Dispositivos Móveis. Banco de Dados (SQLite)

Programação para Dispositivos Móveis. Banco de Dados (SQLite) Programação para Dispositivos Móveis Banco de Dados (SQLite) SQLite O Android possui suporte nativo ao SQLite O SQLite é um mecanismo de banco de dados SQL incorporado. Ao contrário da maioria dos outros

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 06 Controlando o fluxo de eventos e passando parametro para Activities. Dalton Martins dmartins@gmail.com

Leia mais

Firebase. Acesse o site https://firebase.google.com/?hl=pt-br Acesse o menu Go to Console. Acesse com uma conta Google ou crie uma conta.

Firebase. Acesse o site https://firebase.google.com/?hl=pt-br Acesse o menu Go to Console. Acesse com uma conta Google ou crie uma conta. Firebase Acesse o site https://firebase.google.com/?hl=pt-br Acesse o menu Go to Console. Acesse com uma conta Google ou crie uma conta. Adicione um projeto. Crie um projeto Para usar o Firebase num projeto

Leia mais

Desenvolvimento de um aplicativo básico usando o Google Android

Desenvolvimento de um aplicativo básico usando o Google Android Desenvolvimento de um aplicativo básico usando o Google Android (Activity e o seu Ciclo de Vida) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática

Leia mais

Prof: Ricardo Quintão Site:

Prof: Ricardo Quintão   Site: Prof: Ricardo Quintão email: rgquintao@gmail.com Site: www.rgquintao.com.br Vamos agora criar o nosso terceiro projeto Android. Neste projeto realizaremos o cálculo do Índice de Massa Corporal. A aplicação

Leia mais

Desenvolvimento de Aplicativos Android

Desenvolvimento de Aplicativos Android Desenvolvimento de Aplicativos Android Criando uma Interface Simples A partir do diretório res/layout/ abra o activity_main.xml. Este arquivo XML define o layout da sua activity. Ele contém o texto padrão

Leia mais

Android Core. Felipe Silveira felipesilveira.com.br. Aula 6

Android Core. Felipe Silveira felipesilveira.com.br. Aula 6 Android Core Felipe Silveira felipesilveira.com.br Aula 6 Aplicações I Desenvolvimento de Aplicações Android SDK SDK https://developer.android.com/sdk Android SDK Android SDK: Eclipse + ADT plugin + Android

Leia mais

Mensagens. Para conhecimento. Renomear arquivos. Botão Direito no arquivo > Rafactor > Rename Shift + F6

Mensagens. Para conhecimento. Renomear arquivos. Botão Direito no arquivo > Rafactor > Rename Shift + F6 Mensagens Qual a finalidade da mensagem que é exibida para o usuário? - Toasts não necessariamente serão lidas pelos usuários pois aparecem e somem rapidamente. - Alerts são mensagens críticas para o usuário.

Leia mais

Descrição geral do Android

Descrição geral do Android Descrição geral do Android (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Utilização Home screen: Área de notificações Múltiplas páginas

Leia mais

itec h- ON & E ngenharia de S oftware Joel Carvalho - 05/05/2011 Novas Tecnologias Aplicadas à Eng. de So5.

itec h- ON & E ngenharia de S oftware Joel Carvalho - 05/05/2011 Novas Tecnologias Aplicadas à Eng. de So5. itec h- ON & E ngenharia de S oftware Novas Tecnologias Aplicadas à Eng. de So5. Tecnologias Pág. 2 Microso5 Visual Studio 2010 Express l Visual C# Express + Visual Web Developer l h6p://www.microso=.com/express/downloads/#2010-

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Android Android é um sistema operacional para dispositivos móveis Kernel Linux, drivers e bibliotecas do

Leia mais

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho Programação para Android Aula 10: Acesso a câmera, sms e recursos do aparelho Objetivos Nesta aula iremos aprender como invocar os recursos do aparelho: Fazer chamadas telefônicas Enviar SMS Utilizar a

Leia mais

Programa de Dispositivos Móveis

Programa de Dispositivos Móveis Aula 01 Programa de Dispositivos Móveis A Plataforma Android O Android é um conjunto de softwares voltado para dispositivos móveis, como smartphones, tablets, smartbooks ou netbooks. Hoje no mercado existem

Leia mais

AlarmManager. Programação em Dispositivos Móveis (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

AlarmManager. Programação em Dispositivos Móveis (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa AlarmManager (PDM) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Notificar o utilizador passado determinado tempo 2 Mostrar janela com mensagem

Leia mais

Armazenamento de dados

Armazenamento de dados Armazenamento de dados Opções de Armazenamento Shared Preferences Mecanismo simples de armazenar pares de chavevalor Internal Storage Mecanismo para armazenar dados na memória do aparelho External Storage

Leia mais

Desenvolvimento Android. Pontapé inicial...

Desenvolvimento Android. Pontapé inicial... Desenvolvimento Android Pontapé inicial... Toshi Kurauchi andrew.kurauchi@gmail.com @toshikurauchi Por que desenvolver para Android? Por que desenvolver para Android? Por que desenvolver para Android?

Leia mais

Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ Introdução ao Android Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ O que é o Android? Sistema operacional móvel, baseado numa versão modificada do Linux. Código aberto: qualquer pessoa pode

Leia mais

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Prof. MSc. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br Programação para Dispositivos Móveis Aula: CRUD Agenda com SQLite Parte II Caxias - MA Projeto Android Estrutura Activity MainActivity.java

Leia mais

Computação Móvel Gerenciadores de Layout (Ref. Cap. 6)

Computação Móvel Gerenciadores de Layout (Ref. Cap. 6) Universidade Federal de Ouro Preto Departamento de Computação e Sistemas - DECSI Computação Móvel Gerenciadores de Layout (Ref. Cap. 6) Vicente Amorim vicente.amorim.ufop@gmail.com Sumário * Gerenciadores

Leia mais

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PROFª. M.Sc. JULIANA H Q BENACCHIO Action Bar A action bar é a barra superior da aplicação Surgiu no Android 3.0 (API Level 11) Benefícios Identifica a aplicação

Leia mais

Programa Analítico de Disciplina INF311 Programação para dispositivos móveis

Programa Analítico de Disciplina INF311 Programação para dispositivos móveis 0 Programa Analítico de Disciplina Departamento de Informática - Centro de Ciências Exatas e Tecnológicas Número de créditos: Teóricas Práticas Total Duração em semanas: 15 Carga horária semanal 3 1 Períodos

Leia mais

Desenvolvimento para Android Prá3ca 3. Prof. Markus Endler

Desenvolvimento para Android Prá3ca 3. Prof. Markus Endler Desenvolvimento para Android Prá3ca 3 Prof. Markus Endler Exercício 3.1 Solicitando permissão para abrir uma página Web ü Criaremos uma Ac.vity com um EditText (para entrada de uma URL), um Bu?on e uma

Leia mais

Programação para Android. Aula 08: Persistência de dados SQL

Programação para Android. Aula 08: Persistência de dados SQL Programação para Android Aula 08: Persistência de dados SQL Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados. Para guardar informações de forma persistente

Leia mais

p Imagine que um Sistema de Controle do Banco pode ser acessado, além dos Gerentes, pelos Diretores do Banco

p Imagine que um Sistema de Controle do Banco pode ser acessado, além dos Gerentes, pelos Diretores do Banco 1 Expandindo o Sistema p Imagine que um Sistema de Controle do Banco pode ser acessado, além dos Gerentes, pelos Diretores do Banco class Diretor extends Funcionario { public boolean autentica(int senha)

Leia mais

Fatores de Qualidade de So?ware

Fatores de Qualidade de So?ware Programação em Java para a Plataforma Android AULA 19 Fatores de Qualidade de So?ware Fatores de qualidade de So?ware Fatores de qualidade externos e internos AnC fatores de qualidade A rigidez dificultando

Leia mais

Desenvolvimento de um aplicativo básico usando o Google Android

Desenvolvimento de um aplicativo básico usando o Google Android Desenvolvimento de um aplicativo básico usando o Google Android (Activity e Intent) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte

Leia mais

Computação Móvel ActionBar e Temas (Ref. Cap. 5)

Computação Móvel ActionBar e Temas (Ref. Cap. 5) Universidade Federal de Ouro Preto Departamento de Computação e Sistemas - DECSI Computação Móvel ActionBar e Temas (Ref. Cap. 5) Vicente Amorim vicente.amorim.ufop@gmail.com Sumário * Introdução * ActionBar

Leia mais

Desenvolvedor Android: Avançado. Plano de Estudo

Desenvolvedor Android: Avançado. Plano de Estudo Desenvolvedor Android: Avançado Plano de Estudo Descrição do programa A Certificação Android fornece as ferramentas necessárias para projetar e implementar aplicativos para dispositivos Android, com base

Leia mais

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){ UNIVERSIDADE FEDERAL DE SANTA CATARINA - Departamento de Automação e Sistemas PROGRAMAÇÃO DE SISTEMAS AUTOMATIZADOS - 2016/2 - P2 Nome: ------------------------------------------------------------------------------------------------------

Leia mais

Programação Android. Aula 03

Programação Android. Aula 03 Programação Android Aula 03 Plataformas Uso das Versões do SDK Visão geral do Eclipse Instalando diferentes versões do SDK Layout com XML LinearLayout AbsoluteLayout FrameLayout TableLayout RelativeLayout

Leia mais

Capítulo 02: Cadastro de Alunos

Capítulo 02: Cadastro de Alunos Capítulo 02: Cadastro de Alunos Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI marcio.palheta@gmail.com sites.google.com/site/marcio

Leia mais

Introdução ao Google Android

Introdução ao Google Android Introdução ao Google Android Agenda O que é Android Arquitetura e componentes Android Virtual Devices (AVD) Android SDK (Software Development Kit) Android Development Tools (ADT) Estrutura básica de uma

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador) Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado

Leia mais

Android INTERFACE GRÁFICA & LAYOUT. Prof. Dr. Joaquim assunção.

Android INTERFACE GRÁFICA & LAYOUT. Prof. Dr. Joaquim assunção. Android INTERFACE GRÁFICA & LAYOUT Prof. Dr. Joaquim assunção. Graphical User Interface (GUI) Quando o Android estava sendo inventado, seus designers enfrentaram muitas escolhas cujo resultado seria determinar

Leia mais

Prof: Ricardo Quintão Site:

Prof: Ricardo Quintão   Site: Prof: Ricardo Quintão email: rgquintao@gmail.com Site: www.rgquintao.com.br Como criar uma nova Activity? Criando um Projeto Android Até agora, todos os nossos projetos utilizavam apenas uma Activity.

Leia mais

Android Binding. Implementando o padrão de projeto MVVM com MVVM_. Saiba como criar um projeto utilizando o padrão de projeto MVVM no Android

Android Binding. Implementando o padrão de projeto MVVM com MVVM_. Saiba como criar um projeto utilizando o padrão de projeto MVVM no Android MVVM_ Implementando o padrão de projeto MVVM com Android Binding Saiba como criar um projeto utilizando o padrão de projeto MVVM no Android O padrão de projeto MVVM O MVVM (Model-View-ViewModel) foi divulgado

Leia mais

Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:

Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu: Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz - 2015/05/13 Questão: 1 2 3 4 5 6 Total Pontos: 20 15 15 10 10 30 100 Gráu: 1. Defina os termos listados a seguir: (a) (10 Pontos)

Leia mais

Departamento de Ciência de Computadores Estruturas de Dados (CC114)

Departamento de Ciência de Computadores Estruturas de Dados (CC114) 1. Cotação de cada pergunta: 1. 32 / 2. 36 / 3. 32 (Total: 100 pontos) 2. Responda às questões de forma clara e concisa nas folhas de exame distribuídas. 1. (Valorização: 32%) Responda às seguintes questões:

Leia mais

Geração Automática de Código Android Eficiente a partir de Modelos UML

Geração Automática de Código Android Eficiente a partir de Modelos UML Geração Automática de Código Android Eficiente a partir de Modelos UML Abilio Gambim Parada Aline Rodrigues Tonini Lisane Brisolara de Brisolara Grupo de Arquiteturas e Circuitos Integrados - GACI Universidade

Leia mais

Universidade Federal do Paraná

Universidade Federal do Paraná Universidade Federal do Paraná Departamento de Informática Ciência da Computação Tópicos em Computação Android Ciclo de vida activities, tasks, modelo de navegação Prof. Eduardo Todt 2018 objetivos Conhecer

Leia mais

Engenharia de Software

Engenharia de Software UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre Repescagem do 2 o Teste, 1 de Julho de 2016 Nome: Número: Este teste tem um conjunto de 10 perguntas

Leia mais