21
PRONATEC

Aula maps 23_2

Embed Size (px)

Citation preview

Page 1: Aula maps 23_2

PRONATEC

Page 2: Aula maps 23_2

TECNICO INFORMATICA PARA INTERNETDESENVOLVIMENTO ANDROID

PROF. RAFAEL NONATO

Page 3: Aula maps 23_2

GOOGLE MAPS NO APP ANDROID

Diversas aplicações para Android podem e devem fazer uso do Google Maps, que é uma ferramenta incrivelmente poderosa e relativamente fácil de ser usada.

Esta aula explicara passo a passo como integrar o Google Maps na sua aplicação, supondo que é utilizado AndroidStudio e/ou ADT (Android Development Tools).

Esse tutorial foi baseado na página oficial de documentação do Google Maps Android API v2 [1] e suas conexões.

Page 4: Aula maps 23_2

EM RESUMO…

Em resumo, para incluir o mapa na sua aplicação você precisa de:

- Ter uma aplicação rodando (ou seja, Android SDK instalado e configurado, e projeto pronto para modificações);

- Ter configurado o Google Play Services no seu workspace;

- Obter uma chave de API através do Google APIs Console;

- Adicionar configurações ao seu AndroidManifest;

- Adicionar o map ao seu layout;

Page 5: Aula maps 23_2

SDK

NECESSITAMOS DO ANDROID STUDIO FUNCIONANDO E A SDK JAVA INSTALADA PARA QUE POSSAMOS COMPILAR!

Para instalar o Android SDK e iniciar um projeto há diversos tutoriais na web, então irei pular essa parte e ir direto ao que é inerente ao Google Maps Android API v2.

Page 6: Aula maps 23_2

API GOOGLE MAPS

Primeiramente é preciso baixar o Google Play Services, para isso abra o Android SDK Manager

Tools >> Android >> SDK Manager

O Google Maps Android v2 utiliza o Google Play Services para exibir os mapas. O Google Play Services é um conjunto de bibliotecas e APIs disponibilizadas pelo Google, então para desenvolver seu projeto que use mapas é preciso ter no seu workspace o projeto-biblioteca do Google Play Services.

Page 7: Aula maps 23_2

API GOOGLE MAPS

Com o Google Play Services instalado é preciso importa-lo para seu projeto. No Android Studio vá em File – > Import Projetc e selecione Android/Existing Android code Into workspace.

Ao selecionar, aceite os termos e finalize a instalação.

Page 8: Aula maps 23_2

API GOOGLE MAPS

No campo Root digite (ou navegue) o seguinte caminho: (local da instalação do seu:

Android SDK)/extras/google/google_play_services/libproject/google-play-services_lib.

Como mostrado na figura ao lado:

Finalize com OK

Page 9: Aula maps 23_2

UM DOS PONTOS MAIS INTRIGANTES…

Neste momento a lib que importamos do google está no nosso projeto, embora não tenha dependência, ou seja, criamos as instancias para que possa ser utilizada.

Clique com botão direto, conforme abaixo, acesse Open Module Settings

CRIANDO DEPENDENCIA NA LIBRARY

Page 10: Aula maps 23_2

SIGA AS SETAS E COMPLETE OS PASSOS.

CRIANDO DEPENDENCIA NA LIBRARY

1

2

3

4

Page 11: Aula maps 23_2

OBTENDO A CHAVE DE API

Para esse passo você precisa saber que todo e qualquer aplicativo no Android é instalado através de um arquivo .apk e todo arquivo apk precisa ser assinado por uma keystore, que é um arquivo que representa uma chave que garantirá autenticidade ao app.

E NECESSARIO POSSUIR UMA CONTA GOOGLE:

https://code.google.com/apis/console/?noredirect

Page 12: Aula maps 23_2

OBTENDO A CHAVE DE API

Logo após vá a guia de Services, lá encontrará uma grande quantidade de API’s disponíveis para uso, inclusive a Google Maps Android API V2

NA CHAVE ON/OFF, MARQUE ON!

Page 13: Aula maps 23_2

OBTENDO A CHAVE DE API

É preciso saber também que o Google só irá permitir você utilizar a API se ele souber e puder rastrear qual app está utilizando-o (isso é feito para evitar abusos, já que a cada utilização servidores da Google são utilizado para retornar o mapa). Ou seja, você só poderá usar o maps se criar um projeto no Google APIs Console e dizer quais apps (através do package name do seu app) com quais keystores estão ligados ao projetos (e consequentemente a sua conta).

Primeiro vamos obter o SHA1 ligados a sua keystore. Iremos pegar o SHA1 ligado ao seu debug.keystore

Page 14: Aula maps 23_2

Para Linux e OS X: keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

Para Windows: keytool -list -v -keystore ”%USERPROFILE%\.android\debug.keystore” -alias androiddebugkey -storepass android -keypass android

OBTENDO A CHAVE DE API

ABRIR O TERMINAL NO MAC,OU CMD NO WINDOWS, DIGITE A LINHA DE CODIGO ABAIXO:

Page 15: Aula maps 23_2

OBTENDO A CHAVE DE API

A CHAVE QUE UTILIZARA NO API ACCESS, NO GOOGLE API

Page 16: Aula maps 23_2

OBTENDO A CHAVE DE API

CHAVE PRONTA PARA USO

Page 17: Aula maps 23_2

CONFIGURANDO A APLICAÇAO

Abra o arquivo AndroidManifest.xml do seu projeto. Imediatamente antes da tag </application> adicione o seguinte código:

Substituir pela Chave API obtida na tela anterior

Page 18: Aula maps 23_2

ADICIONANDO O MAPA NO LAYOUT

Com tudo configurado, usar um mapa é muito simples. Usando um arquivo xml por exemplo, basta usar o seguinte código:

PRONTO, VAMOS FINALIZAR!

Page 19: Aula maps 23_2

INSTRUINDO A APLICAÇAO

Você deverá visualizar o mapa no seu aplicativo. Vale ressaltar que para o aplicativo funcionar é necessário possuir a ultima versão do Google Play Services. Para testar no emulador, a documentação indica que basta executar um AVD com target para plataforma Google APIs baseada em Android 4.2.2 ou maior, mas pessoalmente, nunca consegui testar o mapa no emulador.

ATENÇAO!

Page 20: Aula maps 23_2

FINALIZANDO…

Adicionamos fragments ao seu layout, que é uma extensão de uma Activity. Agora basta você recuperar esses fragments e usar o método getMap() para ter uma instancia de GoogleMap que é o objeto necessário para customizar o mapa. Por exemplo:

Page 21: Aula maps 23_2

Copyright © 2015 Prof. Leandro Rubim

Todos direitos reservados. Reprodução ou divulgação total ou parcial deste documento é expressamente proíbido sem o consentimento formal, por escrito, do Professor (autor).

Copyright © 2015 Prof. Rafael Nonato

Todos direitos reservados. Reprodução ou divulgação total ou parcial deste documento é expressamente proíbido sem o consentimento formal, por escrito, do Professor (autor).