17. Mapas, ubicación y movilidad
Objetivos
- Integrar Google Maps en aplicaciones Android.
- Gestionar permisos y servicios de localización.
- Mostrar y actualizar la posición del usuario en tiempo real.
- Implementar rutas, marcadores y geocodificación.
Contenido principal
- Introducción a Google Maps Android API.
- Configuración de la clave API y del manifiesto.
- Permisos de ubicación (runtime).
- FusedLocationProviderClient para obtener coordenadas.
- Fragmentos MapFragment y MapView.
- Markers, Polylines, Circles y Overlays.
- Geocoding y reverse geocoding.
- Cálculo de rutas y navegación básica.
- Manejo de eventos de usuario (clics, gestos).
APIs y componentes clave
Componente | Descripción |
FusedLocationProviderClient | Proveedor unificado de ubicación eficiente y de bajo consumo. |
MapFragment / MapView | Contenedor para visualizar el mapa dentro de una Activity o Fragment. |
GoogleMap | Clase para interactuar con el mapa: añadir marcadores, polylines, etc. |
Marker, Polyline, Circle | Elementos gráficos que representan puntos, rutas y áreas. |
Geocoder | Servicio de conversión coordenadas lt-gt direcciones. |
Flujo de trabajo
- Solicitar y comprobar permisos de ubicación en tiempo de ejecución.
- Obtener instancia de FusedLocationProviderClient.
- Inicializar el fragmento o vista de mapa en el layout.
- Configurar la clave API en AndroidManifest.xml y en la consola de Google.
- Escuchar actualizaciones de ubicación y centrar la cámara en el usuario.
- Añadir marcadores y líneas según eventos o datos de la aplicación.
- Usar Geocoder para mostrar direcciones legibles.
- Implementar rutas: calcular distancia y tiempo, dibujar Polyline.
Buenas prácticas
- Gestionar adecuadamente el ciclo de vida de MapView/MapFragment.
- Optimizar frecuencia y precisión de actualizaciones de localización.
- Comprobar disponibilidad de servicios Google Play.
- Usar modo de ubicación equilibrado o bajo consumo según necesidad.
- Mostrar explicación al usuario antes de solicitar permisos.
- Manejar caídas de red o falta de señal GPS.
Casos de uso avanzados
- Rutas multipunto con waypoints y optimización de recorrido.
- Geofencing para notificaciones de entrada/salida de zonas.
- Integración con transporte público y capas de tráfico en tiempo real.
- Realidad aumentada básica sobre la vista de cámara y mapa.
- Compartir ubicación en tiempo real con otros usuarios.
Profundizando sobre: 17. Mapas, ubicación y movilidad
-
Professional Android, 4ª Ed. – Reto Meier y Ian Lake. Wiley.
Comprar -
Android Programming: The Big Nerd Ranch Guide – Bill Phillips, Chris Stewart y Kristin Marsicano. Big Nerd Ranch Guides.
Detalles -
Android Google Maps Cookbook – Packt Publishing.
Más información -
Android Cookbook: Problems and Solutions for Android Developers – Ian F. Darwin. O’Reilly.
O’Reilly -
Pro Android with Kotlin – Peter Späth. Apress. Capítulo dedicado a Maps y Location.
Ver en Apress - Documentación oficial de Android Developers:
- Google Codelabs:
-
Curso Udacity: Developing Android Apps – incluye módulos de mapas y GPS.
Ir al curso -
Pluralsight: Android Maps Integration – curso práctico de integración de Google Maps.
Ver curso - GitHub Repositorios:
Deja una respuesta