📊 Slides: Cap 17 — PokeMap: Onde estão os Treinadores?
Resumo visual da aula, em blocos — use como roteiro de revisão ou apresentação.
🟦 Slide 1: Objetivo da Aula
- Entender como o GPS do celular funciona.
- Capturar Latitude/Longitude e mostrar um mapa interativo do Google.
🟦 Slide 2: O Cenário Prático
Crie o PokeMap: mostre no mapa onde existem “Ginásios Pokémon” na sua cidade. O app precisa saber onde você está para calcular a distância até o ginásio mais próximo.
🟦 Slide 3: Dicionário do Programador
| Termo | Significado |
|---|---|
| Latitude/Longitude | “Endereços” matemáticos do planeta (Norte/Sul, Leste/Oeste) |
| GPS | Sistema de satélites que diz ao celular onde ele está |
| Google Maps SDK | Biblioteca que traz o mapa real do Google para o app |
🏗️ Checklist: permissão ACCESS_FINE_LOCATION + API Key do Google Cloud
🟦 Slide 4: Do Satélite ao Mapa
graph LR
A[Satélite] --> B[Celular: Lat -23, Long -46]
B --> C{Mapa Google}
C --> D["Você está aqui!"]
🟦 Slide 5: Exemplo — Colocando o Marcador
@Composable
fun MapaGinasio() {
val localGinasio = LatLng(-23.5505, -46.6333)
GoogleMap(modifier = Modifier.fillMaxSize()) {
Marker(
state = MarkerState(position = localGinasio),
title = "Ginásio Master",
snippet = "Batalha de Nível 20"
)
}
}
fun obterLocalizacaoAtual(context: Context) {
val cliente = LocationServices.getFusedLocationProviderClient(context)
cliente.lastLocation.addOnSuccessListener { localizacao: Location? ->
if (localizacao != null) {
println("Você está em: ${localizacao.latitude}, ${localizacao.longitude}")
}
}
}
🟦 Slide 6: Prática e Próximos Passos
- 🛠️ Prática 1: pesquisar coordenadas de um lugar famoso.
- 🛠️ Prática 2:
checarProximidade(latitude, tolerância0.001). - 🛠️ Prática 3:
verificarChegadausando o GPS real. - 💪 Exercício extra: proximidade completa (lat + long) com dois marcadores.
- 🧠 Quiz: teste seus conhecimentos.
- ➡️ Próximo capítulo: Cap 18 — Alertas de Batalha (Notificações).