Hace ya unos cuatro meses atrás Playphone, un cliente que ofrece contenido para celulares, eligio a Globant para desarrollar un cliente en Android.
Para los que no saben que es Android les cuento que es un sistema operativo bastante nuevo desarrollado por Google para celulares.

El Android SDK provisto por Google esta muy completo, inclusive viene con un bonito emulador. Pero como nunca se había hecho nada importante en Android (salvo una pequeña demo para LinkedIn) se tuvieron que sortear varios obstáculos que les paso a detallar.
Para empezar, debimos armar un ambiente de desarrollo. Android SDK solo provee un plugin de eclipse que no alcanzaba para integrar el proyecto con Maven. Revolviendo en el ciberspacio apareció un plugin para maven que se tuvo que retocar para adaptarlo a nuestras necesidades. Hoy en dia se utiliza otro que anda de manera respetable.
Se creo también un nuevo repositorio en globant para guardar SDK de maven + plugins de maven. Please, consideren esto cuando alguien tenga que trabajar en algún proyecto android .
Otro problema fue que el SDK de android viene con una JVM que complicaba la corrida de test con maven y por lo tanto la posibilidad de incorporar el proyecto a integracion continua. A raíz de estos problemas, se decidió separar al projecto en dos componentes:
DEVICE que hace uso extensivo del SDK de android y que este a su vez permite armar test que se corren en el teléfono o emulador. Representa básicamente la UI de la aplicación.
CORE que no usa el SDK y eso permite correr test unitarios con maven. En core esta el modelo de negocio y la coneccion con el servidor de Playphone
Device incluia a Core. Esta separación que en un principio pareció lógica nos obligo en algunas situaciones a implementar Observers para que Core pueda usar algo en particular del Android SDK.
Una vez que se resolvieron todos los problemas de ambiente se empezó a desarrollar, pero no fue tan fácil.
Al momento del desarrollo también aparecieron algunas cositas.
En Android el HTML no existe, hay xmls com una sintaxis muy particular, que los diseñadores graficos que pasaron por el proyecto debieron estudiar. Ademas tuvieron que dejar el Dreamweaver para utilizar Eclipse.
Si alguna vez estudiaron concurrencia y nunca tuvieron oportunidad de implementar algo, este era el proyecto. Las pantallas de android no baja en paralelo las imágenes que vemos en una pagina como lo hacen los browser. Por eso se tuvo que implementar ese mecanismo con un pool de threads.
Android fue evolucionando mucho en estos cuatro meses de desarrollo. El proyecto se empezó con la versión 1.1 pasoa la 1.5 y ahora a la 1.6.

Tambien aumentaron los fabricantes de teléfonos que soportan Android. Por ejemplo cuando se empezó el proyecto solo existía el G1 de HCT y ahora ya existen varios (Samsung, Motorola etc ). Se dice por ahí que a fin de año van a lanzar teléfonos con Android en Argentina.
Actualmente Gerardo es el único desarrollador en el proyecto trabajando para que HTC la aplicación en el firmware de sus telefonos.
Entre la gente que paso por el proyecto y les puede contar mas detalles tenemos : Luciana, Paula, Emanuel, Ivan, Mario, Sebastian y Jose.

Facebooktwittergoogle_plusredditlinkedinby feather

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>