SlideShare una empresa de Scribd logo
Python para s60 1  Python  para S60 ( PyS60 )  2 Instalación de  PyS60  en el teléfono  3 Desarrollo de aplicaciones usando Microsoft Windows  4 Desarrollo de aplicaciones usando GNU/Linux  5 Ejemplos de prueba
Pagina principal 1.1  Python 1.2 Pys60 1.3 Características
3.1  Configuracion  y uso de una consola  bluetoooth Para desarrollar aplicaciones en PyS60 necesitamos :  Descargar algún entorno de desarrollo integrado (IDE por sus siglas en inglés) que soporte la sintaxis de Python para el sistema operativo Microsoft Windows:  por ejemplo Eric4 para Windows: www.die-offenbachs.de/eric/eric4-download.html]www.die-offenbachs.de/eric/eric4-download.html  Instalar ActivePython 2.4  http://www.icewalkers.com/Linux/Software/512620/ActivePython.html  Figure 1: Imagen que muestra el IDE ActivePython 2.4 Edite el código en cualquier editor y guardelo con extensión py.  Transferir el archivo creado al dispositivo (guardarlo en la carpeta Python si el teléfono pertenece a la tercera edición de S60).  Ejecutar Python en el teléfono, elija  Run Script  y abra el script recién copiado para que se ejecute.  Pagina principal
5.1 Hola Mundo !  5.2 Envío de SMS  5.3 Recepción de SMS  5.4 Uso de cámara fotográfica  5.5 Uso de FTP  5.6 Envío de MMS Pagina principal
Para ejecutar aplicaciones Python en un dispositivo Nokia S60 se necesita: Instalar el interprete de Python de acuerdo a al modelo de tu dispositivo, el cual puedes descargar de  http://sourceforge.net/projects/pys60 .  Descargar los 2 archivos necesarios para que funcione el interprete PyS60  El intérprete de Python: PythonForS60__1_4_0_3rdEd.sis.  El  Scriptshell _1_4_0_3erEd.sis.  Para la tercera Edición se utilizó la versión: PythonForS60_1_4_0_3rdEd.sis y PythonScriptShell_1_4_0_3erEd.sis. Es recomendable descargar la versión mas actualizada. Instalar los archivos descargados en el teléfono, en el siguiente orden: primero  PythonForS60  (descargar a)), después del  ScriptShell  (descarga b)). Para su instalación se recomienda utilizar el Nokia PC Suiteo bien cualquier otro software para copiarlo al teléfono que sea soportado por sistema operativo.  Nota: para dispositivos de la 3rd . es necesario crear la capeta ‘Python’ en la unidad e: (memoria adicional o disco duro del teléfono) a donde transferirás los scripts que elabores. Si el dispositivo no es 3rd Ed., no es necesario crear la carpeta ni especificar en dónde se instalarán las aplicaciones el Asistente lo hace automáticamente Pagina principal
Python es un lenguaje de programación creado por  Guido van Rossum  en el año los 1990s, en la actualidad Python se considera un proyecto de código abierto, administrado por  Python Software Fundation , la última versión estable fue sacada en septiembre de 2006. Python para S60 (PyS60) además de las características estándares del lenguaje, proporciona el acceso a muchas de las funciones de teléfonos inteligente pro ejemplo : cámara fotográfica, calendario, grabación de sonidos y jugar con el audio, contactos y Bluetooth . Python tiene la capacidad de acceder a la API de C++ de manera más transparente permitiendo el desarrollo de prototipos y pruebas de conceptos que de otra manera resultarían más costoso.  Pagina principal Regresar Python
Pys60 Python para la Serie S60 (PyS60) es una versión modificada del Python adaptada para la Serie S60 del sistema operativo Symbian usado en dispositivos móviles. PyS60 está basado en Python 2.2.2. la cual apoya muchos de los módulos estándares de la biblioteca de Python pero tiene además algunos módulos específicos de la plataforma móvil:  Widgets nativos del GUI,  Bluetooth  Establecimiento de una red de GPRS  Información de la localización del G/M,  Mensajería de SMS,  Acceso a la cámara fotográfica, etc..  Pagina principal Regresar
Características Simple:  Python es en lenguaje simple y minimalístico. El pseudo-código natural de Python es una de sus grandes fortalezas ya que permite concentrarse en la solución del problema en lugar de la sintaxis, es decir el propio lenguaje.  Sencillo de Aprender:  Con Python es extremadamente sencillo de iniciarse en la programación ya que ofrece una sintaxis extraordinariamente simple.  Libre y Fuente Abierta:  Python es un ejemplo de un FLOSS ( Free/Libre and Open Source Software  – Gratuito/Libre y Software de Fuente Abierta). Se pueden distribuir libremente copias de este software, leer su código fuente, hacerle cambios, usar partes del mismo en nuevos programas libres, y en general lo que quieras. FLOSS esta basado en un concepto de una comunidad que comparte conocimiento. Esta es una de las razones por las cuales Python es tan bueno, ha sido creado y mejorado por una comunidad que solo quiere ver un mejor Python.  Lenguaje de Alto Nivel:  Cuando escribes programas en Python nunca debes preocuparte por detalles de bajo nivel, como manejar la memoria empleada por tu programa.  Portable:  Debido a su naturaleza de ser Open Source, Python ha sido portado (es decir, cambiado para hacerlo funcionar) a diversas plataformas. Python se puede usar sobre Linux, Windows, Macintosh, Solaris, OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/OS, Palm OS, QNX, VMS, Psion, Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE y PocketPC.  Interpretado:  Python al ser un lenguaje interpretado convierte el código fuente en una forma intermedia llamada bytecode, después los traduce en el lenguaje nativo de la computadora y ejecuta. Todo esto hace el uso de Python mucho más sencillo. Solo basta con ejecutar los programas, no se debe de enlazar y cargar librerías, esto lo convierte en portable ya que solo basta con copiar el código y correrlo en algún otro sistema. Orientado a Objetos: Python permite programación orientada a procedimientos así como orientada a objetos. En lenguajes orientados a procedimientos, el programa esta construido sobre procedimientos o funciones los cuales no son nada mas que piezas de programa reutilizables. En lenguajes orientado a objetos, el programa es construido sobre objetos los cuales combinan datos y funcionalidad. Python ofrece una manera muy poderosa y simple de emplear programación orientada a objetos, especialmente, cuando se compara con lenguajes como C++ o Java.  Pagina principal Siguiente Pagina
Ampliable:  Se puede combinar código de C con Python.  Empotrable:  Se puede insertar Python dentro de tu programa en C/C++ para ofrecer las facilidades de  scripting  dentro del mismo.  Ampliable:  Se puede combinar código de C con Python.  Empotrable:  Se puede insertar Python dentro de tu programa en C/C++ para ofrecer las facilidades de  scripting  dentro del mismo. Librerías Extendidas:  La librería estándar de Python es de hecho muy amplia. Las cuales ayudan al desarrollo de aplicaciones que tengan que ver con: expresiones regulares, generación de documentos, evaluación de unidades, pruebas, procesos, bases de datos, navegadores web, CGI, FTP, correo electrónico, XML, XML-RPC, HTML, archivos WAV, criptografía, interfaz gráfica del usuario (GUI por sus siglas en inglés) usando TK, y también otras funciones dependientes del Sistema. Recuerde, Además de la librería estándar, hay otras librerías de calidad superior como el Python Imaging Library que es una sorprendente librería para la manipulación de imágenes.  2 Instalación de PyS60 en el teléfono Para ejecutar aplicaciones Python en un dispositivo Nokia S60 se necesita: Instalar el interprete de Python de acuerdo a al modelo de tu dispositivo, el cual puedes descargar de  http://sourceforge.net/projects/pys60.  Descargar los 2 archivos necesarios para que funcione el interprete PyS60  El intérprete de Python: PythonForS60__1_4_0_3rdEd.sis.  El  Scriptshell _1_4_0_3erEd.sis.  Para la tercera Edición se utilizó la versión: PythonForS60_1_4_0_3rdEd.sis y PythonScriptShell_1_4_0_3erEd.sis. Es recomendable descargar la versión mas actualizada. Instalar los archivos descargados en el teléfono, en el siguiente orden: primero  PythonForS60  (descargar a)), después del  ScriptShell  (descarga b)). Para su instalación se recomienda utilizar el Nokia PC Suite (ver imagen o bien cualquier otro software para copiarlo al teléfono que sea soportado por sistema operativo.  Nota: para dispositivos de la 3rd. es necesario crear la capeta ‘Python’ en la unidad e: (memoria adicional o disco duro del teléfono) a donde transferirás los scripts que elabores. Si el dispositivo no es 3rd Ed., no es necesario crear la carpeta ni especificar en dónde se instalarán las aplicaciones el Asistente lo hace automáticamente.  Pagina principal Regresar
Configuracion y uso de una consola buetooth. PyS60 la opción de utilizar una consola del Bluetooth la cual para la comunicación se nos permite utilizar la línea de comandos de Python desde la PC donde los comandos son ejecutados realmente en el teléfono. Para utilizarla realice lo siguiente: Abra una hyperterminal desde la PC, se puede utilizar la Hyperterminal de Windows pero también se pueden utilizar terminales compatibles que usen emulación VT100  Contar con Bluetooth en la PC y un puerto válido COM (de tipo servidor). Para esto se pueden verificar la configuración en Panel de Control/COM Local Bluetooth Figure 2: Puertos COM Locales. En el teléfono ejecute Python y seleccione  Bluetooth console  , automáticamente aparecerá la consola de Python en la PC y podrá introducir código desde la PC y éste se ejecutará en el teléfono (ver imagen).  Figure 3: Shell de Python ejecutándose en la hyperterminal de Microsoft Windows Pagina principal Regresar
Desarrollo de aplicaciones usando GNU/Linux Para desarrollar aplicaciones en PyS60 necesitamos :  Descargar algún IDE o editor de textos que de preferencia soporte sintaxis de Python  Emacs es una buena opción: Para instalarlo en Debian use: <FONT SIZE=2># wajig install emacs21 </FONT> Instalar Python versión 2.4 o superior Para instalarlo en Debian use: <FONT SIZE=2># wajig install python </FONT>  Edite el código en cualquier editor y guardelo con extensión py.  Transferir el archivo creado al dispositivo (guardarlo en la carpeta Python si el teléfono pertenece a la tercera edición de S60).  Ejecutar Python en el teléfono, elija  Run Script  y abra el script recién copiado para que se ejecute. 4.1 Configuración y uso de una consola  Bluetooth 4.2 Ejecución de Aplicaciones utilizando la Consola  Bluetooth Pagina principal
Configuración y uso de una consola Bluetooth http://epx.com.br/artigos/pys60.php  Asegurese de seleccionar el servicio correcto (usualmente el puerto que corresponde a  SyncMLClient ). <FONT SIZE=2># sdptool records 00:12:D2:61:B5:66 </FONT> Agregue un puerto serial a el servicio de nombres SDP Bluetooth, de tal manera que el dispositivo lo pueda encontrar [ ,  ]: <FONT SIZE=2># sdptool add --channel=10 SP # while true; do rfcomm listen /dev/rfcomm0 10; done </FONT> Inicie PyS60 en el dispositivo. Posteriormente, abra la consola Bluetooth. Seleccione la conexión correcta. <FONT SIZE=2># while true; do rfcomm listen /dev/rfcomm0 10; done Waiting for connection on channel 10 Connection from 00:12:D2:61:B5:66 to /dev/rfcomm0 Press CTRL-C for hangup </FONT> Una vez que se haya conectado, ejecute en una terminal de la computadora, cualquiera de los dos siguientes comandos. <FONT SIZE=2># screen /dev/rfcomm0 # cu -l /dev/rfcomm0 </FONT> Pagina principal Regresar
Ejecución de Aplicaciones utilizando la Consola Bluetooth PyS60 trae la opción de utilizar la consola del Bluetooth la cual nos permite utilizar la línea de comandos del Python en la PC donde los comandos son ejecutados realmente en el teléfono. Para utilizarla es necesario:  Abrir una hyperterminal desde la PC si se esta utilizando Windows se puede utilizar la Hyperterminal de Windows pero también se pueden utilizar terminales compatibles con el tipo de emulación VT100  Contar con Bluetooth en la PC y un puerto válido COM de tipo servidor. Para esto se pueden verificar la configuración en Panel de Control/COM Local Bluetooth Figure 4: Hyperterminal de Windows, selección del puerto COM libre para servidor En el teléfono correr Python y seleccinar Bluetooth console automáticamente aparecerá la consola de Python en la PC y podrás introducir código Figure 5: Iniciación de Bluetooth Console desde el teléfono Figure 6: Creación de Aplicaciones desde la hiperterminal de Windows Pagina principal Regresar
Hola Mundo !   <FONT SIZE=2>import appuifw  appuifw.note(u&quot;Hellow World!&quot;, &quot;info&quot;)  &quot;&quot;&quot; NOTA: Las cadenas de texto deben de ser definidas como unicode. u&quot;...&quot;  El mobil no puede desplegar los textos apropiadamente de otra manera. &quot;&quot;&quot;  </FONT> Pagina principal Regresar
Envío de SMS <FONT SIZE=2>&quot;&quot;&quot; Copyright (c) 2005 Jurgen Scheible this script lets you send an sms to 2 users at the same time.  &quot;&quot;&quot;  &quot;&quot;&quot; import the messaging module  &quot;&quot;“ import appuifw  import messaging  &quot;&quot;&quot; create text input field &quot;&quot;&quot;  data = appuifw.query(u&quot;Type your name:&quot;, &quot;text&quot;)  &quot;&quot;&quot; define the mobile numbers here&quot;&quot;&quot;  nbr1 = &quot;123456&quot;  nbr2 = &quot;234567&quot;  &quot;&quot;&quot; define the text that the sms shall contain &quot;&quot;“ txt = u&quot;Greetings from:&quot; +data  &quot;&quot;&quot; create a query with type: &quot;query&quot; -&gt; appuifw.query(label, type) by using an if statement one can check whether the user has pressed &quot;ok&quot; -&gt; True or &quot;cancel&quot; -&gt; False &quot;&quot;“ if appuifw.query(u&quot;Send message to your 2 friends&quot;,&quot;query&quot;) == True:  &quot;&quot;&quot; send out the sms; include the mobile number and the text to be sent &quot;&quot;“ messaging.sms_send(nbr1, txt) messaging.sms_send(nbr2, txt)  &quot;&quot;&quot; confirm with a pop-up note that the sms has been sent out &quot;&quot;&quot; appuifw.note(u&quot;Messages sent&quot;, &quot;info&quot;)  else: &quot;&quot;&quot; in case the user had pressed &quot;cancel&quot;, send a pop-up note that the messages have not been sent out &quot;&quot;&quot;  appuifw.note(u&quot;Well, your Messages are not sent then&quot;, &quot;info&quot;) </FONT> Pagina principal Regresar
Recepción de SMS <FONT SIZE=2>&quot;&quot;“ Copyright (c) 2006 Jurgen Scheible  This script waits for an incoming sms, reads its content and shows it inside a pop-up note  NOTE: PyS60 version 1.3.1 or higher is needed to run this script. &quot;&quot;&quot;  &quot;&quot;&quot; import the module inbox (that handles incoming sms things) &quot;&quot;&quot;  import inbox  import e32  &quot;&quot;&quot; create a function that does the content sms reading &quot;&quot;&quot;  def read_sms(id):  e32.ao_sleep(0.1)  &quot;&quot;&quot; create once more an instance of the inbox() class &quot;&quot;“ i=inbox.Inbox() &quot;&quot;&quot; read the content out of the message that has just arrived &quot;&quot;“ sms_text = i.content(id) &quot;&quot;&quot; display the content inside a pop-up note &quot;&quot;“ appuifw.note(u&quot;sms content: &quot; + sms_text , &quot;info“)  &quot;&quot;&quot; create an instance of the inbox() class &quot;&quot;&quot;  i=inbox.Inbox() print &quot;send now sms to this phone“ &quot;&quot;&quot; put the phone into waiting stage to wait for an incoming message &quot;&quot;“ i.bind(read_sms)  </FONT> Pagina principal Regresar
Uso de cámara fotográfica <FONT SIZE=2>import e32, camera, appuifw, key_codes  def finder_cb(im): canvas.blit(im) def take_picture(): camera.stop_finder() pic = camera.take_photo(size = (640,480))  w,h = canvas.size  canvas.blit(pic,target=(0, 0, w, 0.75 * w), scale = 1) pic.save('e:\\Imagesguatda.com/cmx.p\\picture1.jpg')  def quit(): app_lock.signal()  canvas = appuifw.Canvas()  appuifw.app.body = canvas camera.start_finder(finder_cb) canvas.bind(key_codes.EKeySelect, take_picture) appuifw.app.title = u&quot;My Camera&quot;  appuifw.app.exit_key_handler = quit  app_lock = e32.Ao_lock() app_lock.wait() </FONT> Pagina principal Regresar
Uso de FTP <FONT SIZE=2> &quot;&quot;&quot; Copyright (c) 2006 Jurgen Scheible this script lets you upload a file to a URL using the FTP protocol NOTE: you need to install first the ftplib library to your phone before you can use ftp, because the Nokia Python for S60 package does not incude it by default. NOTE: You need to install the ftplib.py file on your phone as a python library (not a python script). The ftplib.py (comes originally with the desktop python version) &quot;&quot;“ &quot;&quot;&quot; in order to get this script work, you need to fill in: - your servername (your server must be capable of using FTP) - username and password - the correct folder where to store the file &quot;&quot;“ import appuifw from ftplib import FTP &quot;&quot;&quot; name of file to be uploaded (path on phones hard drive)&quot;&quot;“ picselection = &quot;c:/testimg.gif“ def fireupfile(): global picselection ftp = FTP('www.exampleserver.com') &quot;&quot;&quot; give  servername&quot;&quot;“ ftp.set_pasv('true') ftp.login('username','password') &quot;&quot;&quot; give login anonymous&quot;&quot;&quot;  &quot;&quot;&quot; give correct folder where to store the image &quot;&quot;&quot;  ftp.cwd('public_html/examplefolder')  F=open(picselection,'r')  &quot;&quot;&quot; give name of image to be stored as URL &quot;&quot;“ ftp.storbinary(&quot;STOR image.gif&quot;,F,1024)  ftp.quit()  F.close() if appuifw.query(u&quot;fire up image?&quot;,&quot;query&quot;) == True: fireupfile()  </FONT> Pagina principal Regresar
Envío de MMS <FONT SIZE=2>&quot;&quot;&quot; Copyright (c) 2007 Jurgen Scheible this script lets you send an mms to another phone including text and an image  &quot;&quot;&quot;  import appuifw import messaging &quot;&quot;&quot; create text input field &quot;&quot;“ data = appuifw.query(u&quot;Type your name:&quot;, &quot;text&quot;)  &quot;&quot;&quot; define the mobile number here where to send the MMS &quot;&quot;&quot;  nbr = &quot;123456&quot; &quot;&quot;&quot; change the mobile number here &quot;&quot;“ &quot;&quot;&quot; define the text that the sms shall contain &quot;&quot;“ txt = u&quot;Greetings from:&quot; +data &quot;&quot;&quot; image attachment: You must have an picture already available with the name picture1.jpg inside the folder called Images on your memory card. ('e:\\Imagesguatda.com/cmx.p\\picture1.jpg') otherwise the script won't work. (use video or sound file instead of image) send out the mms; include the mobile number, the text and the attachement to be sent &quot;&quot;&quot;  messaging.mms_send(nbr, txt, attachment='e:\\Imagesguatda.com/cmx.p\\picture1.jpg')  &quot;&quot;&quot; confirm with a pop-up note that the sms has been sent out &quot;&quot;“ appuifw.note(u&quot;MMS sent&quot;, &quot;info&quot;) </FONT> Pagina principal Regresar

Más contenido relacionado

PDF
Python
DOCX
T1 software libre, propietario y licencias
PDF
Introduccion a-python
PPT
Software y su tipos tarea 3
PDF
Software Libre en la Carrera de Ciencias de la Computacion
PPTX
Software de sistemas y aplicación
PDF
Creando un repositorio local en Ubuntu
Python
T1 software libre, propietario y licencias
Introduccion a-python
Software y su tipos tarea 3
Software Libre en la Carrera de Ciencias de la Computacion
Software de sistemas y aplicación
Creando un repositorio local en Ubuntu

La actualidad más candente (14)

PDF
1 curso-de-python-introducci-n-a-python
PDF
Manual Pascal
PPTX
PPTX
Software
PDF
Freepascal
PDF
Introducción a Python
PDF
Sublime text2
ODP
Desarrollo Software Entornos G N U Linux Una Final
PPTX
Presentacion Bryan Isaac Fuentes
PPTX
Aprendamos python
PDF
Pbpesp
ODP
Taller de Instalación de Software
PDF
Instalación python
1 curso-de-python-introducci-n-a-python
Manual Pascal
Software
Freepascal
Introducción a Python
Sublime text2
Desarrollo Software Entornos G N U Linux Una Final
Presentacion Bryan Isaac Fuentes
Aprendamos python
Pbpesp
Taller de Instalación de Software
Instalación python
Publicidad

Destacado (6)

PDF
FORMATO PLAN DE SEGUIMIENTO Y EVALUACIÓN - ETAPA PRODUCTIVA
PPTX
eTwinning Valga Gümnaasiumi koolituse materjall
PPT
презентация по теме
PPTX
Hipermedia, Hipertexto Y Multimedia
DOCX
Jhonatan sistemas
PDF
Каштакский бор
FORMATO PLAN DE SEGUIMIENTO Y EVALUACIÓN - ETAPA PRODUCTIVA
eTwinning Valga Gümnaasiumi koolituse materjall
презентация по теме
Hipermedia, Hipertexto Y Multimedia
Jhonatan sistemas
Каштакский бор
Publicidad

Similar a Python Para S60 (20)

PDF
1. Presentación e instalación de Python.pdf
PPT
Python S60
PPTX
clase de python basica de programación aplicada
PDF
Parallel python sistemas operativos avanzados
PDF
Electonica de potencia, diodos de rectificacion
PPTX
introduccion a phyton, origen e historia del lenguaje de programación
PDF
Parallel Python sistemas operativos avanzados
PDF
Introducción a python
PPT
Presentacion Python S60
PPT
PPT python S60
PPTX
Manual01pythonbasicoparaprincipiantes.pptx
PPTX
Python básico _ introducción breve .pptx
PPTX
Tipos de Software
PDF
01 - Introducción al lenguaje de programación Python 3
PPTX
PPTX
01 T1 2021 Sistemas Embebidos.pptx
ODP
OpenMP - Configuración de IDE y ejecución de código paralelo
PPT
Presentación software libre
PPTX
TIPOS DE SOFTWARE
PPTX
Android
1. Presentación e instalación de Python.pdf
Python S60
clase de python basica de programación aplicada
Parallel python sistemas operativos avanzados
Electonica de potencia, diodos de rectificacion
introduccion a phyton, origen e historia del lenguaje de programación
Parallel Python sistemas operativos avanzados
Introducción a python
Presentacion Python S60
PPT python S60
Manual01pythonbasicoparaprincipiantes.pptx
Python básico _ introducción breve .pptx
Tipos de Software
01 - Introducción al lenguaje de programación Python 3
01 T1 2021 Sistemas Embebidos.pptx
OpenMP - Configuración de IDE y ejecución de código paralelo
Presentación software libre
TIPOS DE SOFTWARE
Android

Último (20)

PDF
Diapositiva proyecto de vida, materia catedra
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PPTX
Presentacion de Alba Curso Auditores Internos ISO 19011
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PDF
Ronmy José Cañas Zambrano - Potenciando la tecnología en Venezuela.pdf
PDF
CyberOps Associate - Cisco Networking Academy
PDF
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
PPTX
Presentación de Redes de Datos modelo osi
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
PDF
Maste clas de estructura metálica y arquitectura
PPTX
modulo seguimiento 1 para iniciantes del
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
PPT
introduccion a las_web en el 2025_mejoras.ppt
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PDF
clase auditoria informatica 2025.........
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Diapositiva proyecto de vida, materia catedra
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Presentación PASANTIAS AuditorioOO..pptx
Presentacion de Alba Curso Auditores Internos ISO 19011
Power Point Nicolás Carrasco (disertación Roblox).pptx
Ronmy José Cañas Zambrano - Potenciando la tecnología en Venezuela.pdf
CyberOps Associate - Cisco Networking Academy
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
Presentación de Redes de Datos modelo osi
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
informe_fichas1y2_corregido.docx (2) (1).pdf
Maste clas de estructura metálica y arquitectura
modulo seguimiento 1 para iniciantes del
Historia Inteligencia Artificial Ana Romero.pptx
introduccion a las_web en el 2025_mejoras.ppt
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
historia_web de la creacion de un navegador_presentacion.pptx
clase auditoria informatica 2025.........
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad

Python Para S60

  • 1. Python para s60 1 Python para S60 ( PyS60 ) 2 Instalación de PyS60 en el teléfono 3 Desarrollo de aplicaciones usando Microsoft Windows 4 Desarrollo de aplicaciones usando GNU/Linux 5 Ejemplos de prueba
  • 2. Pagina principal 1.1 Python 1.2 Pys60 1.3 Características
  • 3. 3.1 Configuracion y uso de una consola bluetoooth Para desarrollar aplicaciones en PyS60 necesitamos : Descargar algún entorno de desarrollo integrado (IDE por sus siglas en inglés) que soporte la sintaxis de Python para el sistema operativo Microsoft Windows: por ejemplo Eric4 para Windows: www.die-offenbachs.de/eric/eric4-download.html]www.die-offenbachs.de/eric/eric4-download.html Instalar ActivePython 2.4 http://www.icewalkers.com/Linux/Software/512620/ActivePython.html Figure 1: Imagen que muestra el IDE ActivePython 2.4 Edite el código en cualquier editor y guardelo con extensión py. Transferir el archivo creado al dispositivo (guardarlo en la carpeta Python si el teléfono pertenece a la tercera edición de S60). Ejecutar Python en el teléfono, elija Run Script y abra el script recién copiado para que se ejecute. Pagina principal
  • 4. 5.1 Hola Mundo ! 5.2 Envío de SMS 5.3 Recepción de SMS 5.4 Uso de cámara fotográfica 5.5 Uso de FTP 5.6 Envío de MMS Pagina principal
  • 5. Para ejecutar aplicaciones Python en un dispositivo Nokia S60 se necesita: Instalar el interprete de Python de acuerdo a al modelo de tu dispositivo, el cual puedes descargar de http://sourceforge.net/projects/pys60 . Descargar los 2 archivos necesarios para que funcione el interprete PyS60 El intérprete de Python: PythonForS60__1_4_0_3rdEd.sis. El Scriptshell _1_4_0_3erEd.sis. Para la tercera Edición se utilizó la versión: PythonForS60_1_4_0_3rdEd.sis y PythonScriptShell_1_4_0_3erEd.sis. Es recomendable descargar la versión mas actualizada. Instalar los archivos descargados en el teléfono, en el siguiente orden: primero PythonForS60 (descargar a)), después del ScriptShell (descarga b)). Para su instalación se recomienda utilizar el Nokia PC Suiteo bien cualquier otro software para copiarlo al teléfono que sea soportado por sistema operativo. Nota: para dispositivos de la 3rd . es necesario crear la capeta ‘Python’ en la unidad e: (memoria adicional o disco duro del teléfono) a donde transferirás los scripts que elabores. Si el dispositivo no es 3rd Ed., no es necesario crear la carpeta ni especificar en dónde se instalarán las aplicaciones el Asistente lo hace automáticamente Pagina principal
  • 6. Python es un lenguaje de programación creado por Guido van Rossum en el año los 1990s, en la actualidad Python se considera un proyecto de código abierto, administrado por Python Software Fundation , la última versión estable fue sacada en septiembre de 2006. Python para S60 (PyS60) además de las características estándares del lenguaje, proporciona el acceso a muchas de las funciones de teléfonos inteligente pro ejemplo : cámara fotográfica, calendario, grabación de sonidos y jugar con el audio, contactos y Bluetooth . Python tiene la capacidad de acceder a la API de C++ de manera más transparente permitiendo el desarrollo de prototipos y pruebas de conceptos que de otra manera resultarían más costoso. Pagina principal Regresar Python
  • 7. Pys60 Python para la Serie S60 (PyS60) es una versión modificada del Python adaptada para la Serie S60 del sistema operativo Symbian usado en dispositivos móviles. PyS60 está basado en Python 2.2.2. la cual apoya muchos de los módulos estándares de la biblioteca de Python pero tiene además algunos módulos específicos de la plataforma móvil: Widgets nativos del GUI, Bluetooth Establecimiento de una red de GPRS Información de la localización del G/M, Mensajería de SMS, Acceso a la cámara fotográfica, etc.. Pagina principal Regresar
  • 8. Características Simple: Python es en lenguaje simple y minimalístico. El pseudo-código natural de Python es una de sus grandes fortalezas ya que permite concentrarse en la solución del problema en lugar de la sintaxis, es decir el propio lenguaje. Sencillo de Aprender: Con Python es extremadamente sencillo de iniciarse en la programación ya que ofrece una sintaxis extraordinariamente simple. Libre y Fuente Abierta: Python es un ejemplo de un FLOSS ( Free/Libre and Open Source Software – Gratuito/Libre y Software de Fuente Abierta). Se pueden distribuir libremente copias de este software, leer su código fuente, hacerle cambios, usar partes del mismo en nuevos programas libres, y en general lo que quieras. FLOSS esta basado en un concepto de una comunidad que comparte conocimiento. Esta es una de las razones por las cuales Python es tan bueno, ha sido creado y mejorado por una comunidad que solo quiere ver un mejor Python. Lenguaje de Alto Nivel: Cuando escribes programas en Python nunca debes preocuparte por detalles de bajo nivel, como manejar la memoria empleada por tu programa. Portable: Debido a su naturaleza de ser Open Source, Python ha sido portado (es decir, cambiado para hacerlo funcionar) a diversas plataformas. Python se puede usar sobre Linux, Windows, Macintosh, Solaris, OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/OS, Palm OS, QNX, VMS, Psion, Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE y PocketPC. Interpretado: Python al ser un lenguaje interpretado convierte el código fuente en una forma intermedia llamada bytecode, después los traduce en el lenguaje nativo de la computadora y ejecuta. Todo esto hace el uso de Python mucho más sencillo. Solo basta con ejecutar los programas, no se debe de enlazar y cargar librerías, esto lo convierte en portable ya que solo basta con copiar el código y correrlo en algún otro sistema. Orientado a Objetos: Python permite programación orientada a procedimientos así como orientada a objetos. En lenguajes orientados a procedimientos, el programa esta construido sobre procedimientos o funciones los cuales no son nada mas que piezas de programa reutilizables. En lenguajes orientado a objetos, el programa es construido sobre objetos los cuales combinan datos y funcionalidad. Python ofrece una manera muy poderosa y simple de emplear programación orientada a objetos, especialmente, cuando se compara con lenguajes como C++ o Java. Pagina principal Siguiente Pagina
  • 9. Ampliable: Se puede combinar código de C con Python. Empotrable: Se puede insertar Python dentro de tu programa en C/C++ para ofrecer las facilidades de scripting dentro del mismo. Ampliable: Se puede combinar código de C con Python. Empotrable: Se puede insertar Python dentro de tu programa en C/C++ para ofrecer las facilidades de scripting dentro del mismo. Librerías Extendidas: La librería estándar de Python es de hecho muy amplia. Las cuales ayudan al desarrollo de aplicaciones que tengan que ver con: expresiones regulares, generación de documentos, evaluación de unidades, pruebas, procesos, bases de datos, navegadores web, CGI, FTP, correo electrónico, XML, XML-RPC, HTML, archivos WAV, criptografía, interfaz gráfica del usuario (GUI por sus siglas en inglés) usando TK, y también otras funciones dependientes del Sistema. Recuerde, Además de la librería estándar, hay otras librerías de calidad superior como el Python Imaging Library que es una sorprendente librería para la manipulación de imágenes. 2 Instalación de PyS60 en el teléfono Para ejecutar aplicaciones Python en un dispositivo Nokia S60 se necesita: Instalar el interprete de Python de acuerdo a al modelo de tu dispositivo, el cual puedes descargar de http://sourceforge.net/projects/pys60. Descargar los 2 archivos necesarios para que funcione el interprete PyS60 El intérprete de Python: PythonForS60__1_4_0_3rdEd.sis. El Scriptshell _1_4_0_3erEd.sis. Para la tercera Edición se utilizó la versión: PythonForS60_1_4_0_3rdEd.sis y PythonScriptShell_1_4_0_3erEd.sis. Es recomendable descargar la versión mas actualizada. Instalar los archivos descargados en el teléfono, en el siguiente orden: primero PythonForS60 (descargar a)), después del ScriptShell (descarga b)). Para su instalación se recomienda utilizar el Nokia PC Suite (ver imagen o bien cualquier otro software para copiarlo al teléfono que sea soportado por sistema operativo. Nota: para dispositivos de la 3rd. es necesario crear la capeta ‘Python’ en la unidad e: (memoria adicional o disco duro del teléfono) a donde transferirás los scripts que elabores. Si el dispositivo no es 3rd Ed., no es necesario crear la carpeta ni especificar en dónde se instalarán las aplicaciones el Asistente lo hace automáticamente. Pagina principal Regresar
  • 10. Configuracion y uso de una consola buetooth. PyS60 la opción de utilizar una consola del Bluetooth la cual para la comunicación se nos permite utilizar la línea de comandos de Python desde la PC donde los comandos son ejecutados realmente en el teléfono. Para utilizarla realice lo siguiente: Abra una hyperterminal desde la PC, se puede utilizar la Hyperterminal de Windows pero también se pueden utilizar terminales compatibles que usen emulación VT100 Contar con Bluetooth en la PC y un puerto válido COM (de tipo servidor). Para esto se pueden verificar la configuración en Panel de Control/COM Local Bluetooth Figure 2: Puertos COM Locales. En el teléfono ejecute Python y seleccione Bluetooth console , automáticamente aparecerá la consola de Python en la PC y podrá introducir código desde la PC y éste se ejecutará en el teléfono (ver imagen). Figure 3: Shell de Python ejecutándose en la hyperterminal de Microsoft Windows Pagina principal Regresar
  • 11. Desarrollo de aplicaciones usando GNU/Linux Para desarrollar aplicaciones en PyS60 necesitamos : Descargar algún IDE o editor de textos que de preferencia soporte sintaxis de Python Emacs es una buena opción: Para instalarlo en Debian use: <FONT SIZE=2># wajig install emacs21 </FONT> Instalar Python versión 2.4 o superior Para instalarlo en Debian use: <FONT SIZE=2># wajig install python </FONT> Edite el código en cualquier editor y guardelo con extensión py. Transferir el archivo creado al dispositivo (guardarlo en la carpeta Python si el teléfono pertenece a la tercera edición de S60). Ejecutar Python en el teléfono, elija Run Script y abra el script recién copiado para que se ejecute. 4.1 Configuración y uso de una consola Bluetooth 4.2 Ejecución de Aplicaciones utilizando la Consola Bluetooth Pagina principal
  • 12. Configuración y uso de una consola Bluetooth http://epx.com.br/artigos/pys60.php Asegurese de seleccionar el servicio correcto (usualmente el puerto que corresponde a SyncMLClient ). <FONT SIZE=2># sdptool records 00:12:D2:61:B5:66 </FONT> Agregue un puerto serial a el servicio de nombres SDP Bluetooth, de tal manera que el dispositivo lo pueda encontrar [ , ]: <FONT SIZE=2># sdptool add --channel=10 SP # while true; do rfcomm listen /dev/rfcomm0 10; done </FONT> Inicie PyS60 en el dispositivo. Posteriormente, abra la consola Bluetooth. Seleccione la conexión correcta. <FONT SIZE=2># while true; do rfcomm listen /dev/rfcomm0 10; done Waiting for connection on channel 10 Connection from 00:12:D2:61:B5:66 to /dev/rfcomm0 Press CTRL-C for hangup </FONT> Una vez que se haya conectado, ejecute en una terminal de la computadora, cualquiera de los dos siguientes comandos. <FONT SIZE=2># screen /dev/rfcomm0 # cu -l /dev/rfcomm0 </FONT> Pagina principal Regresar
  • 13. Ejecución de Aplicaciones utilizando la Consola Bluetooth PyS60 trae la opción de utilizar la consola del Bluetooth la cual nos permite utilizar la línea de comandos del Python en la PC donde los comandos son ejecutados realmente en el teléfono. Para utilizarla es necesario: Abrir una hyperterminal desde la PC si se esta utilizando Windows se puede utilizar la Hyperterminal de Windows pero también se pueden utilizar terminales compatibles con el tipo de emulación VT100 Contar con Bluetooth en la PC y un puerto válido COM de tipo servidor. Para esto se pueden verificar la configuración en Panel de Control/COM Local Bluetooth Figure 4: Hyperterminal de Windows, selección del puerto COM libre para servidor En el teléfono correr Python y seleccinar Bluetooth console automáticamente aparecerá la consola de Python en la PC y podrás introducir código Figure 5: Iniciación de Bluetooth Console desde el teléfono Figure 6: Creación de Aplicaciones desde la hiperterminal de Windows Pagina principal Regresar
  • 14. Hola Mundo ! <FONT SIZE=2>import appuifw appuifw.note(u&quot;Hellow World!&quot;, &quot;info&quot;) &quot;&quot;&quot; NOTA: Las cadenas de texto deben de ser definidas como unicode. u&quot;...&quot; El mobil no puede desplegar los textos apropiadamente de otra manera. &quot;&quot;&quot; </FONT> Pagina principal Regresar
  • 15. Envío de SMS <FONT SIZE=2>&quot;&quot;&quot; Copyright (c) 2005 Jurgen Scheible this script lets you send an sms to 2 users at the same time. &quot;&quot;&quot; &quot;&quot;&quot; import the messaging module &quot;&quot;“ import appuifw import messaging &quot;&quot;&quot; create text input field &quot;&quot;&quot; data = appuifw.query(u&quot;Type your name:&quot;, &quot;text&quot;) &quot;&quot;&quot; define the mobile numbers here&quot;&quot;&quot; nbr1 = &quot;123456&quot; nbr2 = &quot;234567&quot; &quot;&quot;&quot; define the text that the sms shall contain &quot;&quot;“ txt = u&quot;Greetings from:&quot; +data &quot;&quot;&quot; create a query with type: &quot;query&quot; -&gt; appuifw.query(label, type) by using an if statement one can check whether the user has pressed &quot;ok&quot; -&gt; True or &quot;cancel&quot; -&gt; False &quot;&quot;“ if appuifw.query(u&quot;Send message to your 2 friends&quot;,&quot;query&quot;) == True: &quot;&quot;&quot; send out the sms; include the mobile number and the text to be sent &quot;&quot;“ messaging.sms_send(nbr1, txt) messaging.sms_send(nbr2, txt) &quot;&quot;&quot; confirm with a pop-up note that the sms has been sent out &quot;&quot;&quot; appuifw.note(u&quot;Messages sent&quot;, &quot;info&quot;) else: &quot;&quot;&quot; in case the user had pressed &quot;cancel&quot;, send a pop-up note that the messages have not been sent out &quot;&quot;&quot; appuifw.note(u&quot;Well, your Messages are not sent then&quot;, &quot;info&quot;) </FONT> Pagina principal Regresar
  • 16. Recepción de SMS <FONT SIZE=2>&quot;&quot;“ Copyright (c) 2006 Jurgen Scheible This script waits for an incoming sms, reads its content and shows it inside a pop-up note NOTE: PyS60 version 1.3.1 or higher is needed to run this script. &quot;&quot;&quot; &quot;&quot;&quot; import the module inbox (that handles incoming sms things) &quot;&quot;&quot; import inbox import e32 &quot;&quot;&quot; create a function that does the content sms reading &quot;&quot;&quot; def read_sms(id): e32.ao_sleep(0.1) &quot;&quot;&quot; create once more an instance of the inbox() class &quot;&quot;“ i=inbox.Inbox() &quot;&quot;&quot; read the content out of the message that has just arrived &quot;&quot;“ sms_text = i.content(id) &quot;&quot;&quot; display the content inside a pop-up note &quot;&quot;“ appuifw.note(u&quot;sms content: &quot; + sms_text , &quot;info“) &quot;&quot;&quot; create an instance of the inbox() class &quot;&quot;&quot; i=inbox.Inbox() print &quot;send now sms to this phone“ &quot;&quot;&quot; put the phone into waiting stage to wait for an incoming message &quot;&quot;“ i.bind(read_sms) </FONT> Pagina principal Regresar
  • 17. Uso de cámara fotográfica <FONT SIZE=2>import e32, camera, appuifw, key_codes def finder_cb(im): canvas.blit(im) def take_picture(): camera.stop_finder() pic = camera.take_photo(size = (640,480)) w,h = canvas.size canvas.blit(pic,target=(0, 0, w, 0.75 * w), scale = 1) pic.save('e:\\Imagesguatda.com/cmx.p\\picture1.jpg') def quit(): app_lock.signal() canvas = appuifw.Canvas() appuifw.app.body = canvas camera.start_finder(finder_cb) canvas.bind(key_codes.EKeySelect, take_picture) appuifw.app.title = u&quot;My Camera&quot; appuifw.app.exit_key_handler = quit app_lock = e32.Ao_lock() app_lock.wait() </FONT> Pagina principal Regresar
  • 18. Uso de FTP <FONT SIZE=2> &quot;&quot;&quot; Copyright (c) 2006 Jurgen Scheible this script lets you upload a file to a URL using the FTP protocol NOTE: you need to install first the ftplib library to your phone before you can use ftp, because the Nokia Python for S60 package does not incude it by default. NOTE: You need to install the ftplib.py file on your phone as a python library (not a python script). The ftplib.py (comes originally with the desktop python version) &quot;&quot;“ &quot;&quot;&quot; in order to get this script work, you need to fill in: - your servername (your server must be capable of using FTP) - username and password - the correct folder where to store the file &quot;&quot;“ import appuifw from ftplib import FTP &quot;&quot;&quot; name of file to be uploaded (path on phones hard drive)&quot;&quot;“ picselection = &quot;c:/testimg.gif“ def fireupfile(): global picselection ftp = FTP('www.exampleserver.com') &quot;&quot;&quot; give servername&quot;&quot;“ ftp.set_pasv('true') ftp.login('username','password') &quot;&quot;&quot; give login anonymous&quot;&quot;&quot; &quot;&quot;&quot; give correct folder where to store the image &quot;&quot;&quot; ftp.cwd('public_html/examplefolder') F=open(picselection,'r') &quot;&quot;&quot; give name of image to be stored as URL &quot;&quot;“ ftp.storbinary(&quot;STOR image.gif&quot;,F,1024) ftp.quit() F.close() if appuifw.query(u&quot;fire up image?&quot;,&quot;query&quot;) == True: fireupfile() </FONT> Pagina principal Regresar
  • 19. Envío de MMS <FONT SIZE=2>&quot;&quot;&quot; Copyright (c) 2007 Jurgen Scheible this script lets you send an mms to another phone including text and an image &quot;&quot;&quot; import appuifw import messaging &quot;&quot;&quot; create text input field &quot;&quot;“ data = appuifw.query(u&quot;Type your name:&quot;, &quot;text&quot;) &quot;&quot;&quot; define the mobile number here where to send the MMS &quot;&quot;&quot; nbr = &quot;123456&quot; &quot;&quot;&quot; change the mobile number here &quot;&quot;“ &quot;&quot;&quot; define the text that the sms shall contain &quot;&quot;“ txt = u&quot;Greetings from:&quot; +data &quot;&quot;&quot; image attachment: You must have an picture already available with the name picture1.jpg inside the folder called Images on your memory card. ('e:\\Imagesguatda.com/cmx.p\\picture1.jpg') otherwise the script won't work. (use video or sound file instead of image) send out the mms; include the mobile number, the text and the attachement to be sent &quot;&quot;&quot; messaging.mms_send(nbr, txt, attachment='e:\\Imagesguatda.com/cmx.p\\picture1.jpg') &quot;&quot;&quot; confirm with a pop-up note that the sms has been sent out &quot;&quot;“ appuifw.note(u&quot;MMS sent&quot;, &quot;info&quot;) </FONT> Pagina principal Regresar