27 jun. 2010

Enviar correo desde Android con python





Siguiendo con la API de ASE se tiene una función que permite enviar un correo pasando el correo, el asunto y el cuerpo del correo.

La función del API de ASE que permite enviar correos se llama:
sendEmail(correo,asunto,cuerpo_correo)

A continuación se coloca el código del programa en python para enviar el correo:

#Se importa el módulo android
import android

#Se crea la instancia de la clase Android
droid = android.Android()

#Se define la dirección de correo, el asunto del correo y el contenido del mismo
asunto = "Prueba de envio de correo desde Android con un script de python"
para = "ecrespo@gmail.com"
cuerpo_correo = "Esta es una prueba de envio de correo\n El tiempo en el reloj es: %s\n ------\n Ernesto Crespo\n" %time.ctime()

#Se llama a la función sendEmail con los datos necesarios.
#Esto llama a la aplicación de envío de correo de forma gráfica con la
#información que se pasa en la función.
droid.sendEmail(para,asunto,cuerpo_correo)

#Se finaliza la instancia de la clase.
droid.exit()

El resultado se puede ver en las siguientes imágenes:
La primera imagen es del buzón de salida.

Y la siguiente imagen es del buzón de recibidos.

Notará que en el correo se tiene la hora de ejecución del script pero el script se recibió a otra hora, el problema fue que el celular no tenía conexión 3G y se tuvo que conectar a una red wifi para poder enviar los correos.

3 comentarios:

Richard Ricciardelli dijo...

Muy interesante la información que colocó pero, ¿cómo se utiliza Python para Android? - En especial, ¿cómo se implementaría ese código? Si pudiese crear un proyecto en Android utilizando esa codificación, sería genial.

Saludos. :)

ernesto dijo...

Saludos Richard.
El código que publique funciona en un celular con android teniendo instalado en el celular SL4A.
Claro al programa le falta algo de widgets gráficos de Android para crear el correo (asunto, destinatario y cuerpo del correo). Este fin de semana puedo agregar esas cosas y subir un artículo nuevo.

ernesto dijo...

Revisa este post:
http://ernesto-ecrespo.blogspot.com/2010/06/instalar-python-en-android.html