Posts tagged with “android”
Excusas BOFH para Android
Gracias al gran proyecto iniciado por Ivan Mosquera (Irontec) llamado PHP for Android me enteré de la existencia de Scripting Layer for Android, un proyecto que nos permite desarrollar scripts para nuestro sistema móvil favorito. Entre los lenguajes que soporta se encuentran:
- Python
- Sh
- Perl
- Rhino
- Lua
- Ruby
- ...
Mediante unos sencillos scripts es posible acceder a funciones para controlar el TTS, GPS, Bateria, Bluetooth, SMS, etc. Vamos, que en pocas líneas te puedes hacer cositas bastante interesantes. Yo como administrador de sistemas estoy acostumbrado a programar Scripts (y no aplicaciones completas), por lo que esto se convierte en un juguete muy divertido sin necesidad de meterte con el monstruo Java.
La instalación es sencilla. En primer lugar instalamos SL4A:

A continuación desde http://code.google.com/p/android-scripting/downloads/list te puedes instalar los interpretes para alguno de los lenguajes mencionados anteriormente. Para el ejemplo que vamos a ver a continuación usaremos Python:

Y listo, solo nos queda hacer nuestros scripts y subirlos a /sdcard/sl4a/scripts
Yo os pongo un ejemplo, que es simple y facil de entender. Es un script en python que se descarga una lista de excusas BOFH de una URL en concreto y escoge una al azar para mostrartela en pantalla. Siempre viene bien tener a mano estas frases para responder a las típicas preguntas "oyeee, que no me funca el aparatooo". Así que para tenerlo accesible creamos un enlace en el escritorio:

Lo lanzamos y tenemos nuestra excusa:

Aquí el código. Se aceptan críticas y mejoras :P
import android import urllib2 from random import randint droid = android.Android() try: f = urllib2.urlopen("http://pages.cs.wisc.edu/~ballard/bofh/excuses") except urllib2.HTTPError, e: print "ERROR" print e.code exit(1) except urllib2.URLError, e: print "ERROR" print e.reason exit(1) ex = f.read() \# Separamos las frases por los saltos de lineas, convirtiendolo en una lista ex = ex.split("\n") f.close() \# Buscamos el numero de frases que hay (otra forma mas bonita de hacerlo?) c = 0 for i in ex: c = c + 1 \# Cogemos una al azar r = randint(0, c) \# La mostramos droid.dialogCreateAlert("BOFH Excuse", ex.pop(r - 1)) droid.dialogSetPositiveButtonText('Close') droid.dialogShow()







