Aplicación Android que recomienda rutas de running y senderismo saludables por Madrid, combinando datos abiertos del Ayuntamiento con un algoritmo de puntuación ambiental propio.
Proyecto presentado a los Premios a la Reutilización de Datos Abiertos del Ayuntamiento de Madrid II Edición 2026
- 🗺️ Mapa interactivo con Google Maps y visualización de capas ambientales
- 🌿 Puntuación saludable por ruta basada en datos reales:
- Calidad del aire (tiempo real)
- Parques y zonas verdes
- Fuentes de agua potable
- Seguridad nocturna
- 📍 Generación automática de rutas (Running / Walking de 3, 5 u 8 km)
- 💾 Historial de entrenamientos persistente (Room)
- ❤️ Sistema de rutas favoritas
- 🌍 Soporte multiidioma (español / inglés)
- 📴 Modo offline con fallback a datos locales
| Dataset | Fuente | URL |
|---|---|---|
| Calidad del aire (tiempo real) | Portal Datos Abiertos Madrid | ver dataset |
| Parques y jardines municipales | Portal Datos Abiertos Madrid | ver dataset |
| Fuentes de agua potable | Portal Datos Abiertos Madrid | ver dataset |
La puntuación de cada ruta se calcula combinando:
- ✅ +puntos por parques y zonas verdes cercanas
- ✅ +puntos por fuentes de agua en el trayecto
- ❌ −puntos por índice de contaminación del aire
- ❌ −puntos por zonas con menor seguridad nocturna (modo noche)
| Capa | Tecnología |
|---|---|
| Lenguaje | Kotlin (Android nativo) |
| UI | XML + Material Design 3 |
| Mapas | Google Maps SDK |
| Base de datos | Room (SQLite) |
| Red | API REST -> Portal Datos Abiertos Madrid |
| Persistencia | TrainingHistory + FavoriteRoute (Room) |
app/
├── MapsActivity.kt # Actividad principal
├── RunSmartApp.kt # Application (gestión de idioma)
├── MadridOpenDataSource.kt # Consumo APIs Madrid Open Data
├── db/
│ ├── AppDatabase.kt
│ ├── TrainingHistory.kt
│ └── FavoriteRoute.kt
└── res/
├── values/ # Strings español
└── values-en/ # Strings inglés
- Sincronización periódica de datos abiertos (offline-first)
- Alertas ambientales en tiempo real
- Integración con Garmin, Google Fit y Strava
- Exportación de rutas en GPX/KML
- Gamificación y sistema de logros
- Backend propio para sincronización en la nube
Teresa Cáceres Hernández
Finalizando estudios de DAM,
Proyecto desarrollado con enfoque en datos abiertos,
clean code y buenas prácticas de desarrollo Android.





