domingo, 28 de marzo de 2010

Python para móviles, en español, y 1.

Hola a todos. He incluido en El Viaje Del Navegante un gadget contador gráfico de visitas, que indica la procedencia de los usuarios que visitan el blog. Muchas gracias a todos!!!! De verdad, ver que hay gente que lee las cosas que yo escribo desde lugares tan dispares del mundo me llena de orgullo, y sobretodo y más importante, me da ánimos para seguir, así que lo dicho, MUCHAS GRACIAS A TODOS LOS PYTHÓNICOS!!!

(Todo aquel que lee cosas de Python lo considero pythónico, es un bautismo in fact!)

En este artículo voy a hablar de Python y cómo crear aplicaciones para móviles (o celulares si estamos en latinoamérica) para la plataforma S60.

Decir que las pruebas las voy a realizar sobre un Nokia 5800, con sistema operativo Symbian (evidentemente) y con el intérprete de Python.

INSTALACIÓN DE PYTHON EN UN MÓVIL

¿Por dónde empezamos? Más bien por el principio. La página de referencia para empezar a trabajar en programación para dispositivos móviles con Python es el foro de Nokia. Aquí encontraréis información para saber lo que nos vamos a instalar, y porqué instalarlo.

Suponiendo que tenemos un móvil que admite la plataforma S60 y no tenemos Python incluido en él, vamos a buscar el intérprete para instalarlo en el dispositivo. El proyecto Python for S60 se encuentra alojado en Maemo Garage, más concretamente en https://garage.maemo.org/frs/?group_id=854. Aquí podemos encontrar la documentación en PDF (S60 Module Reference Release 2.0.0), así como el fichero de instalación de Python for S60. En mi caso, que estoy trabajando en plataforma Windows, me instalo PythonForS60_2.0.0_Setup.exe. Una vez se descarga y se instala obtenemos lo siguiente:

Lo segundo es conectar el móvil al PC. Para ello utiliza lo que tengas disponible, esto es, por USB, Bluetooth, o la forma de conexión de la que disponga tu dispositivo.

Tercero, utilizar un software que pueda cargar los ficheros SIS (archivo instalador de un proyecto escrito en Python, parecido a JAD en J2ME). En mi caso, al tener un Nokia, me instalé en primer lugar el Nokia Pc Suite. Más tarde opté por el Nokia Ovi Suite.


Cuarto paso. Instalar Python en el móvil. ¿Cómo? Si nos vamos a la instalación del Python for S60 que hemos realizado anteriormente, hay una carpeta llamada PyS60 Dependencies. Aquí se encuentran los ficheros SIS que hay que instalar. Si tienes instalado un programa como Nokia Ovi Suite, por ejemplo, al hacer doble click sobre ellos en principio se instalarán automáticamente en tu móvil (darse cuenta que el móvil tiene que estar conectado al PC de alguna forma).

¿Qué ficheros instalar? Python 2.0.0 y pips son fundamentales. Con esto debería bastar. Pero recomiendo al lector además instalarse stdioserver, SSL y el PythonScriptShell. Vamos, instalarse todo si la memoria de vuestro móvil os deja. Esta información está en el Quick Start Guide que se os instala con el Python for S60.


Si todo ha ido bien (que no tiene porqué ir mal), se os instala Python en vuestro móvil.

CREAR UN HOLA MUNDO EN PYTHON MOBILE

Vamos a crear una aplicación Hola Mundo de toda la vida, y la vamos a instalar en nuestro móvil. Esta explicación está exactamente igual que en el Quick Start Guide, solo que aquí la vamos a hacer paso a paso. Si lo hago es para que el lector se anime a hacerlo, ya que sé por experiencia que, ver las cosas antes de probarlas anima a probarlas.

Paso 1: Nos vamos a nuestro editor favorito y creamos un script en Python.


Paso 2: Nos vamos a PyS60 Application Packager:

Y lo ejecutamos.

Como hemos creado un fichero script Python, seleccionamos ScriptFile (que viene seleccionado por defecto) y buscamos con Browse el fichero que contiene el "Hola Mundo". Una vez seleccionado hacemos click en el botón Create, y ¡¡¡magia!!!, ya lo tenemos:


Darse cuenta de los comentarios que aparecen. En primer lugar el fichero SIS se ha creado, que es nuestro programa listo para ser ejecutado en un móvil con intérprete Python. En las siguientes líneas nos aparecen unos warnings que nos dicen que no hay certificado, ni UID, ni versión de aplicación. Esto se puede configurar, como se verá más adelante.

Si hacemos click en Open Folder, vemos el fichero SIS que se ha generado:


Finalmente, se instala, haciendo click en el botón Install de la ventana que nos dice que se ha generado el fichero, ó directamente haciedo click en el archivo SIS.



En nuestro móvil aceptamos la instalación, e instalamos donde más nos guste,si es que disponemos de tarjeta externa. En la instalación en el móvil podría ser que se nos informará de los riesgos de instalación de aplicaciones no firmadas ó algo por el estilo. Como la aplicación la hemos hecho nosotros, no hay problema.

RESULTADOS
Aquí os presento una foto de la aplicación ejecutándose en un Nokia 5800. Perdonad si se ve mal, pero no tenía una mejor cámara para realizar la foto. Espero podáis disculparme. Esto lo he hecho solo para certificaros que efectivamente funciona.


CONCLUSIONES

No es demasiado complicado instalar Python for Mobile para empezar a crear nuestras aplicaciones para dispositivos móviles en plataformas S60. Además, es muy sencillo empezar a crear aplicaciones. Cabe destacar que no es necesario tener grandes conocimientos sobre este lenguaje para programar con este tipo de dispositivos. Aquí es más importante la imaginación de qué aplicaciones hacer para un dispositivo móvil que cómo hacerlo, ya que esto último es muy sencillo, como veremos en siguientes artículos.

Si el lector quiere buscar más información ,además de la documentación en PDF que viene suministrada, hay un libro bastante interesante, llamado Mobile Python: Rapid Prototyping of Applications on the Mobile Platform, bastante bueno y recomendado. Hay numerosos ejemplos y el código fuente se puede descargar gratuitamente de http://www.mobilepythonbook.com/.

Saludos.

3 comentarios:

  1. Excelente guía, de verdad agradezco esta guía de como iniciar en Python porque he estado buscando días este tipo de guías en la red, y solo he encontrado el como instalar y correr el scrip pero nunca el paso a paso de la instalación, programación y ejecutar la app, de verdad estoy mas que agradecido, espero que me valla bien por este mundo del soft... un saludo

    ResponderEliminar
  2. sos un capo, lo que me daba bronca de python era que no sabia como hacer el archivo sis, pero despues de ver esto me cope y lo voy a probar con mi s60v3 hice muchas cosas en python, basicas y las probe y cuando empeze a tener problemas con los modulos o codigos que no andaban etc etc. lo deje pero me dieron ganas de intentar lograr algo para los nokia ya que no ahi nada en español en internet y posiblemente suba algo a mi pagina pero cuando tenga tiempo...

    ResponderEliminar
  3. Excelente, la unica guia que encontre que me ayudo

    ResponderEliminar