Download J2ME-Seccion 1
Document related concepts
no text concepts found
Transcript
Taller de Programación de Dispositivos Móviles José Miguel Rubio L. Oficina 3-20 http://www.inf.ucv.cl/~jrubio jose.rubio.l@ucv.cl Parte 1 1.Programación de dispositivos móviles 2.Limitaciones de los dispositivos móviles 3.Sistemas operativos móviles 4.Desarrollo de aplicaciones móviles 5.Java 2 Mobile Edition 6.Configuración CDC 7.Configuración CLDC 8.Paquetes opcionales en J2ME 9.MIDP: MIDlets 10.MIDP: Interfaces Gráficas de Usuario 11.MIDP: Persistencia 12.MIDP: Conexión por red 13.Persistencia II: Ficheros 14.Para terminar Programación de Dispositivos Móviles La generalización en los últimos años de teléfonos móviles, smartphones, PDAs, etc. ha generado una importante necesidad de aplicaciones para este tipo de dispositivos. ●Las prestaciones de los dispositivos móviles se incrementan día a día, posibilitando la implementación de aplicaciones muy interesantes. ● ● ● ● ● ● ● ● Acceso a Internet y conectividad mediante Bluetooth Envío de mensajes cortos Aceleración 2D y 3D Reproducción de video y sonido Cámara integrada Información de localización GPS ● Sensores de orientación etc. Programación de dispositivos móviles Limitaciones de los dispositivos móviles La necesidad de ahorrar energía obliga a utilizar procesadores con una capacidad de cómputo limitada y baja frecuencia de reloj. ●El uso intensivo de cálculos, gráficos, sonido, conexiones inalámbricas, etc. limita la vida de la bateria. ● La memoria disponible es muy limitada en comparación con la de un computador común. ●El almacenamiento de datos persistente también es muy limitado: memoria interna + tarjetas SD o similar. ● Sistemas operativos móviles Son sistemas operativos específicos para este tipo de dispositivos, que tienen en cuenta las limitaciones que hemos visto antes. ●Symbian es el S.O. instalado en mayor número de dispositivos móviles en la actualidad, sobre todo teléfonos móviles. ●Dos plataformas: S60 y UIQ ● S60 UIQ móviles Windows Mobile, con mayor difusión en el mercado de PDAs. ● Palm OS, utilizado por el fabricante de PDAs Palm Inc. ● Programación de dispositivos móviles Android, es un S.O. para móviles presentado recientemente por Google. Utiliza un kernel Linux. ● Otros S.O. móviles: RIM Blackberry y otros S.O. basados en kernel linux. ● Sistemas operativos móviles Desarrollo de aplicaciones móviles Gran disparidad de plataformas de desarrollo. ●Symbian (S60 y UIQ): C++ con librerías nativas. ●Windows Mobile: .NET Compact Framework, una versión limitada de .NET. ●PalmOS: C/C++, con librerías nativas. ●Android: Java con librerías nativas (no J2ME). ●Java Mobile Edition (J2ME) para múltiples plataformas, especialmente Symbian. ●Otras: Python. ● móviles Java 2 Mobile Edition Java 2 Mobile Edition La única opción real que permite un desarrollo multiplataforma para dispositivos móviles. ●Tiene una estructura altamente modular para adaptarse a las características de cada dispositivo. ● Sistemas operativos móviles Java 2 Mobile Edition Las configuraciones (CDC y CDLC) definen el e ntorno mínimo necesario para la ejecución de aplicaciones java en un grupo amplio de dispositivos móviles (JVM/KVM+paquetes básicos). ●Los perfiles definen paquetes adicionales para soportar funcionalidades básicas imprescindibles de cada familia de dispositivos ●Los paquetes opcionales sirven para cubrir funcionalidades específicas: Bluetooth, soporte 3D, etc. ● Sistemas operativos móviles Configuración CLDC Configuración CLDC CLDC (Connected Limited Device Configuration). Para dispositivos con potencia de cálculo, memoria, batería y acceso a red limitados ●Incluye una máquina virtual java reducida (KVM) y los siguientes paquetes: ● ● ● ● ● ● java.lang (reducida) java.lang.ref (reducida) java.util (reducida) java.io (reducida) java.microedition.io Sólo incluye las clases básicas ●EEDDs: Vector, Hashtable y Stack ● Sistemas operativos móviles Configuración CDLC Mobile Information Device Profile (MIDP) es el perfil más común con CLDC ●MIDP permite la implementación de aplicaciones con la siguiente funcionalidad: ● ● ● ● ● Interfaz de usuario sencilla, adaptada a móviles ● API especializado para juegos Persistencia básica Conexión por red Sonido La mayoría de los móviles actuales soportan CLDC +MIDP. Mucho éxito por la implementación de juegos ●La programación MIDP para configuración CLDC requiere la instalación del Sun Java Wireless Toolkit ●Netbeans proporciona soporte mediante el Mobility Pack ● Sistemas operativos móviles Paquetes opcionales en J2ME Paquetes opcionales en J2ME Permiten extender la funcionalidad básica de los perfiles para aprovechar todas las posibilidades del dispositivo. ●Wireless Messaging API (WMA) JSR120, JSR205. Envío de mensajes SMS. ●Mobile Media API (MMAPI) JSR135. Soporte de audio y video, tanto reproducción como captura. ●Location API JSR179. Localización geográfica del dispositivo, mediante GPS u otros mecanismos. ● Sistemas operativos móviles Paquetes opcionales en J2ME Personal Information Management and File Connection API JSR 75. Acceso a la lista de contactos del teléfono móvil y al sistema de ficheros ●Security and Trust Services API JSR 177. Tratamiento de información privada, ejecución segura, identificación y autentificación, etc. ●Mobile 3D Graphics JSR 184. Soporte de gráficos 3D ●J2ME Web Services API (WSA) JSR172. Soporte de servicios web en dispositivos móviles ●J2ME RMI JSR 66. Llamada a operaciones de objetos remotos ●Bluetooth API JSR 82 ● Sistemas operativos móviles