jueves, 22 de abril de 2010

Kindle SDK

De todas las plataformas a las cuales me dedique a desarrollar aplicaciones, creo que Kindle es una de las que mas trabajo me costo. Con solo poner Kindle SDK en google, veremos los pocos resultados utiles que obtenemos.


Hasta el día de hoy (3 meses después de anunciada la beta del SDK) no conozco un foro dedicado al tema... solo un par de threads sueltos en www.mobileread.com


Vamos a la parte tecnica:


La maquina virtual de java corre la versión 1.4, y para desarrollar aplicaciones utilizaremos la API Java Personal Basis Profile (PBP) JSR-000217. El mismo puede ser descargado de aqui.



Ciclos de vida del kindlet:


Loading: Se llama al constructor de la clase (La cual debe heredar de AbstractKindlet) y posteriormente al método create(final KindletContext context).


Ready to run: Una vez que finaliza el método create, y también cada vez que la aplicación pasa a segundo plano, el kindlet entra en este estado. Cuando la aplicacion vuelve a ser visible, se llama al método start(). Si la aplicación va finalizar su ejecución, se llama al método destroy().


Running: La aplicación esta en primer plano. Al único estado que puede pasar es a Ready to run (Aun cuando se quiere finalizar la ejecución), antes de pasar a este estado, se llama al método stop().




Implementando los cuatro métodos anteriormente señalados, podemos comenzar a desarrollar nuestra 
aplicación
. El sdk de Kindle (Tambien conocido como KDK) implementa muchos componentes (basados en AWT) para desarrollar la interfaz, por lo cual no debería suponer mucho tiempo de investigación tener una GUI funcionando. A modo de recomendación, el Kindle simulator es muy útil, sobretodo a la hora de debuggear, pero tiene muchas diferencias en cuanto a velocidad y/o capacidad de renderizado de pantalla. Por ende va a ser necesario ir ejecutando cada tanto la aplicación en el dispositivo, para saber si todo marcha como nosotros esperamos.