Vamos fazer uma rota de onde você se encontra para a academia que você escolheu, ao clicar no botão COMO CHEGAR.

Vamos utilizar o Google Maps, outra opção que eu vi é o Mapbox só que não consegui fazer funcionar com essa biblioteca.

Para utilizar o Google Maps você precisar criar um projeto na plataforma do Google para poder gerar uma chave de acesso. (Não sabe criar um projeto? Siga os primeiros passos desse tutorial)

Siga esse tutorial para obter a chave de acesso: Guia rápido: como obter uma Chave de API do Google Maps?

Outra API que devemos ativar é a Direction API, veja o passo 11 desse tutorial.

Agora vamos aos arquivos e veja os códigos:

build.gradle

activity_como_chegar.xml

Esse arquivo é a tela que mostra o mapa com a rota. Para criar essa tela escolha a activity que já vem preparada para mapas.

AndroidManifest.xml

As seguintes declarações: @string/google_maps_key e @integer/google_play_services_version.

O primeiro está no arquivo google_maps_api.xml.

O segundo está no arquivo values.xml, esse arquivo não fica visível para você, ele está na pasta do gradle.

Pelo que eu lembre esses dois arquivos são gerados automaticamente.

DetalheActivity.java

Adicionei nesse arquivo a linha public static String ENDERECO_ACADEMIA = null; para ser utilizado no arquivo ComoChegar.java.

DirectionParser.java

Esse arquivo coloquei na pasta tools.

ComoChegar.java

Esse arquivo é o que vai manipular os dados para criar a rota, eu criei uma pasta chamada mapa e coloquei esse arquivo lá.

Fonte:

https://c1ctech.com/android-googlemap-example-to-draw-route-between-two-locations/


https://www.journaldev.com/13373/android-google-map-drawing-route-two-points


https://www.tutorialspoint.com/how-to-show-current-location-on-a-google-map-on-android


https://medium.com/@andrea8787/android-example-draw-route-between-two-location-using-google-direction-7e7610f5e7f2
https://stackoverflow.com/questions/3574644/how-can-i-find-the-latitude-and-longitude-from-address

Para enviar seu comentário, preencha os campos abaixo:

Deixe um comentário

*

Seja o primeiro a comentar!