Artículo Completo

26/04/12

El Desarrollo de Aplicaciones Móviles en Canarias

Canarias requiere el desarrollo de aplicaciones móviles resistentes a la desconexión de datos. Existe discontinuidad en el acceso a Internet desde los terminales debido a las zonas de sin cobertura por su difícil orografía y al alto número de usuarios extranjeros sin conexión de datos a través de redes móviles, sino a través de islas Wifi gratis.
Desarrollo de aplicaciones móviles con cortes en la conexión de redes de datos.

Canarias tiene un territorio escarpado que dificulta la propagación de señales de telecomunicación, produciendo múltiples zonas de sombra sin cobertura. Por otro lado, la saturación de infraestructuras ocasiona problemas de conexión a la red de datos móvil en zonas con gran número de usuarios.

Por tratarse Canarias de una zona eminentemente turística, es necesario tener en cuenta los patrones de uso de aplicaciones móviles de los extranjeros que visitan las islas. Los operadores de telefonía cobran unos altos precios en el roaming internacional de datos, por lo que es práctica habitual la conexión de los terminales a Internet únicamente en los hoteles y otras zonas de Wifi Gratis. Estos usuarios tendrán conexión con Internet únicamente durante unas horas al día y en zonas que pueden diferir del lugar donde se haga uso de nuestra aplicación.

Sincronización

Una aplicación funcionará sin conexión si dispone en local de la información necesaria para su uso. De igual manera, la aplicación deberá controlar la información que sube al servidor.

Funcionamiento sin conexión

Toda aplicación móvil debe tener en local información suficiente para comenzar la ejecución y realizar un diagnóstico de su situación, previniendo errores de conexión en su arranque. La muestra de errores en el arranque de la aplicación suele llevar al abandono por los usuarios.

La mejor técnica es distribuir la información básica junto con el desplegable. Posteriormente puede actualizarse la información en un CACHÉ LOCAL mediante la actualización online de contenidos.

Como previsión, pueden descargarse datos con información a publicar en el futuro, mostrando los datos únicamente a partir de una fecha determinada. De esta manera se tendrá cacheada  la información actual e información futura, aumentando la robustez de la aplicación frente a desconexiones. Este sistema permite una fácil distribución de campañas de marketing online.

Junto con los bloques de información se puede establecer una “huella” que permita conocer de forma rápida si la información almacenada coincide con la disponible en el servidor. Para contenidos almacenados en base de datos será necesario comprobar dos datos: la fecha y hora de la última actualización del conjunto de datos y el número de elementos. Cualquier realizado cambio afecta a uno de estos dos parámetros y se debe sincronizar.

Subida de datos en diferido

Realizar la subida de datos desde una aplicación móvil a un servidor en Internet o en la nube, requiere almacenar la información en local con unos tamaños razonables (no es muy recomendable enviar fotos de 8MB con una conexión GPRS), por lo que, en muchos casos se requiere de un pre-procesamiento de los datos en el terminal móvil. En aquellos casos en los que se disponga de conexión a Internet se podrá realizar el envío en el momento, en el caso de no disponer de conexión o ser una conexión lenta, se podrá escuchar el evento de cambio en el estado de la conexión de datos.

En el caso de Android, se podrá quedar la aplicación en segundo plano esperando que haya un cambio en la conexión de datos, pero en aquellos casos de desarrollo de aplicaciones para iPhone o iPad, será necesario que el usuario arranque la aplicación para realizar la subida de los datos pendientes de envío.

Envío de Notificaciones

El abuso de técnicas PULL (conexión periódica con el servidor para comprobar si hay datos actualizados) aumenta enormemente el consumo de batería, por lo que sólo han de utilizarse en aquellos casos estrictamente necesarios. Para el resto de casos, deben utilizarse técnicas PUSH (envío de notificaciones desde el servidor cuando existen cambios).

iPhone no permite que las aplicaciones realicen acciones en segundo plano, por lo que previenen el uso de técnicas de PULL, algo muy extendido en el desarrollo de aplicaciones Android.

Tanto iPhone como Android disponen de sistemas de notificaciones PUSH.

Apple dispone del sistema APNS (Apple Push Notifications Service). Para enviar notificaciones, la aplicación debe solicitar a APNS un “token” que identifica a la aplicación y al terminal. El token debe ser enviado por la aplicación al proveedor de la aplicación para que lo registre. Las notificaciones serán enviadas por un proveedor a un “token”, lo que permitirá a la aplicación instalada atender las notificaciones recibidas.

De manera similar Google dispone de C2DM (Cloud to Device Messaging), que requiere a los usuarios disponer de una cuenta de google y un “Registration ID”, concedido por C2DM a la aplicación instalada, autorizando la recepción de notificaciones. El proveedor del servicio debe guardar este identificador para realizar envíos. Las notificaciones son recibidas directamente por la aplicación, aunque no se esté ejecutando.

En Android no está muy extendido el uso del sistema de notificaciones, siendo habituales las prácticas de pulling.


Artículos Recientes

Julio 2017 Oferta de empleo: Analistas Programadores

Estamos buscando personas para ampliar nuestro equipo y evolucionar...


El 25% de los pasajeros de Metropolitano de Tenerife viaja con la aplicación Vía-Móvil

Metropolitano de Tenerife, que gestiona el tranvía en la isla de...


Presentación de los Recursos para Mayores del Ayuntamiento de Santa Cruz de Tenerife

El Alcalde de Santa Cruz de Tenerife, D. José Manuel Bermúdez, junto...


TenerifePIP: Guía Turística de Senderos en Tenerife

La Aplicación móvil TenerifePIP desarrollada por Avantic para el...


Vía-Móvil amplía su área de utilización a toda la isla de Tenerife

El Cabildo de Tenerife ha lanzado el miércoles 6 de agosto una...