7 feb 2014

Cómo construir una app móvil de mapas en menos de un día....a partir de la infraestructura tecnológica corporativa de la Junta de Andalucía


Esta navidad el equipo del proyecto SIG Corporativo de la Junta de Andalucía, en colaboración con los equipos de los proyectos IDE Andalucía y CDAU (Callejero Digital de AndalucíaUnificado), ha publicado una app android con mapas de itinerarios de las cabalgatas de reyes de algunos municipios de Andalucía. Lo más destacable es que se ha hecho con recursos propios (sin contrataciones externas) y en menos de dos jornadas laborales (incluyendo la publicación en Google Play).

¿Como ha sido posible que hayamos podido montar una app de mapas, que incluya navegación GPS hasta los puntos de interés del itineriario de las cabalgatas, en menos de un día de trabajo, y otro para la publicación en Google Play? Porque realmente ya estaba todo hecho, teníamos los componentes de partida, que era la infraestructura tecnológica y de información que los proyectos Página del proyecto SIG Corporativo de la Junta de Andalucía, IDE Andalucía y Callejero Digital de Andalucía Unificado proporcionan, y solo teníamos que saber "qué botones tocar".

El primer componente era MAPEA, el API para construir mapas interactivos en Internet del proyecto SIG Corporativo. MAPEA tiene un diseño modular y orientado a servicio, de tal forma que para construir un mapa solo hay que saber montar una URL de Internet. Y ha sido posible utilizar MAPEA para una app móvil porque MAPEA tiene un diseño adaptable ("responsive design"). Esto es importante, porque los móviles inteligentes vienen ya preparados para hacer zoom arrastrando los dedos, y este evento entra en conflicto con el zoom de MAPEA si se usan los mismos eventos para la versión desktop que para la versión móvil.

Para que nos hagamos una idea de lo sencillo que resulta montar un mapa web con MAPEA, y a partir de un fichero KML con la ruta de la cabalgata de Alcalá de Guadaira que nos proporcionó el equipo del CDAU, que previamente publicamos en un servidor web para que fuera accesible desde MAPEA, la siguiente URL nos permite generar dicho visor:


Los siguientes componentes eran los servicios de mapas de la IDE Andalucía (ortofoto) y del CDA (Callejero Digital de Andalucía), con los que montar la cartografía de base sobre la que posicionar la ruta de la cabalgata y los puntos de interés. Además, para poder realizar búsquedas por dirección postal, se utilizan los servicios web de geocodificación de los proyectos SIGC / CDAU, servicios con los que MAPEA ya viene integrado de serie.

Es decir, con la infraestructura tecnológica de herramientas y servicios de Información geográfica ya existentes en la Junta de Andalucía, y escribiendo una URL de navegador web, ya teníamos montado dicho visor de mapas interactivo (previa publicación en Internet de los archivos KML.

El siguiente paso era empaquetarlo en una app (apk para Android). Para ello, utilizamos la tecnología PhoneGap, basada en un principio de diseño muy parecido al de Java: los desarrolladores escriben aplicaciones en un lenguaje común (en este caso Javascript + CSS + HTML 5), y las "despliegan" en motores de ejecución o máquinas virtuales específicos de cada dispositivo, que les dan acceso a los recursos hardware del mismo (GPS, agenda del teléfono, etc), bien sean Android, IOS, Blackberry etc. Esta tarea es muy sencilla, y ya tenemos un esqueleto de proyecto PhoneGAP preparado, para este fin. De hecho, hemos publicado el código fuente del proyecto PhoneGap de la aplicación de cabalgatas en la web del repositorio de software de la Junta de Andalucía, dentro del proyecto SIG Corporativo. Una vez en la página del proyecto, es necesario pulsar el botón "Descargar" y buscar el archivo "cabalgata_reyes_2014_mapea_mobile".

El objetivo que nos habíamos marcado al abordar este piloto, que era utilizar la infraestructura que hemos venido creando para desarrollar una APP con mínimo esfuerzo que nos permita ofrecer servicios de información al ciudadano, y detectar problemas de usabilidad que nos permitan corregir algunos errores, ha sido alcanzado con creces. No obstante, y por el título de la aplicación, ésta ha podido generar expectativas en los usuarios que la descargaron, que al no encontrar su municipio (solo nos dio tiempo a salir con 4 municipios) no han quedado satisfechas. De cualquier forma, y gracias a esta experiencia piloto, estamos trabajando en facilitar la publicación de informacíon geográfica relacionada con eventos futuros de un modo mucho más exhaustivo.

Publicado por Álvaro Zabala