Download Capítulo 5 - Departamento de Electrónica - UTFSM
Document related concepts
no text concepts found
Transcript
Universidad Técnica Federico Santa María Departamento de Electrónica Telemática TEL-352 Seminario de Telemática II Capítulo 5 Introducción al Desarrollo de Aplicaciones Móviles usando J2ME CHM-2008 Seminario de Telemática II 1 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Objetivos • Introducir los principales conceptos de la plataforma de desarrollo J2ME. CHM-2008 Seminario de Telemática II 2 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Introducción a J2ME CHM-2008 Seminario de Telemática II 3 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Introducción a J2ME • • Java 2 Plataform, Micro Edition (J2ME) es la versión liviana de java para dispositivos pequeños. Ventajas: – El desarrollo en general es independiente de la plataforma móvil, o con pocos cambios. – Características de seguridad que provienen de java. CHM-2008 Seminario de Telemática II 4 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Principales Aspectos • • J2ME es java para dispositivos pequeños. Está dividido en: – Configurations – Profiles – Optional APIs. CHM-2008 Seminario de Telemática II 5 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Configuration • • • • Define un tipo específico de dispositivo, con restricciones de memoria y poder de procesamiento. Esto especifica un tipo de máquina virtual que debe soportar el dispositivo. También define un subconjunto de clases J2SE, y un conjunto de APIs opcionales. Incluye: CLDC 1.0, 1.1 CHM-2008 Seminario de Telemática II 6 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Profiles • • • Define aspectos más específicos de la configuración. Está basado en la configuración y provee APIs adicionales tales como interfaz de usuario, almacenamiento persistente, etc. Incluye: MIDP 1.0, 2.0, 2.1 CHM-2008 Seminario de Telemática II 7 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Optional APIs • • Definen ciertas funcionalidades adicionales que pueden ser incluidas en la configuración o profile. Stack: configuration, profile y optional apis. – Ejemplo: CLDC 1.0 + MIDP 2.0 + MMAPI CHM-2008 Seminario de Telemática II 8 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Configuraciones y Profiles Comunes CHM-2008 Seminario de Telemática II 9 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Configurations JSR Nombre 30 139 36 218 Connected, Limited Device Configuration (CLDC) 1.0 Connected, Limited Device Configuration (CLDC) 1.1 Connected Device Configuration 1.0.1 Connected Device Configuration 1.1 * Para ver detalles de JSR: http://jcp.org/jsr/detail/<JSR>.jsp CHM-2008 Seminario de Telemática II 10 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Profiles JSR Nombre 37 118 75 46 129 62 219 217 Mobile Information Device Profile 1.0 Mobile Information Device Profile 2.0 PDA Profile 1.0 Foundation Profile 1.0 Personal Basis Profile 1.0 Personal Profile 1.0 Foundation Profile 1.1 Personal Basis Profile 1.1 CHM-2008 Seminario de Telemática II 11 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Optional APIs JSR Nombre 75 82 135 184 179 120 205 172 66 PDA Optional Packages for J2ME Java APIs for Bluetooth Mobile Media API 1.1 Mobile 3D Graphics Location API for J2ME Wireless Messaging API 1.0 Wireless Messaging API 2.0 J2ME Web Services APIs RMI Optional Package CHM-2008 Seminario de Telemática II 12 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Configurations • Existen dos tipo de configuraciones: – CDC: Connected Device Configuration. – CLDC: Connected, Limited Device Configuration. CHM-2008 Seminario de Telemática II 13 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Connected Device Configuration • • • • 512 KB de memoria ROM mínimo. 256 KB de memória RAM mínimo. Algún tipo de conexión de red. Diseñado para: – sep-top boxes. – Sistema de navegación de autos. – PDA de alta gama. – Versiones CDC 1.0.1 y 1.1 CHM-2008 Seminario de Telemática II 14 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Connected, Limited Device Configuration • • Está pensada para dispositivos más pequeños que CDC. Describe limitaciones: – Resolución de display – Memoria – Poder de CPU – Tamaño del display – Entrada – Batería – Conexión a red CHM-2008 Seminario de Telemática II 15 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Profiles • • Mobile Information Device Profile (MIDP). De acuerdo a la especificación MIDP 2.0 (JSR-118) un dispositivo tiene las siguientes características: – Mínimo de 256 KB de ROM para la implementación MIDP. – Mínimo de 128 KB de RAM para el java runtime heap. – Mínimo de 8 KB de memoria no volátil para almacenamiento persistente. – Mínimo de 96x54 pixeles. – Algún dispositivo de entrada. – Dos conexiones de red, posiblemente intermitentes. CHM-2008 Seminario de Telemática II 16 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Estandarización de la Plataforma • • Dada la cantidad de configuraciones, profiles y optional APIs, ¿cuál sería configuración típica?. Sun respondió definiendo JSR-185: Java Technology for de Wireless Industry (JTWI). – MIDP 2.0 – CLDC 1.0 o 1.1 – WMA (Wireless Message API – JSR 120). – MMAPI (Mobile Media API) para dispositivos con audio y video. CHM-2008 Seminario de Telemática II 17 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Anatomía de Aplicaciones J2ME • Las aplicaciones se componen de paquetes CLDC y MIDP. CHM-2008 Seminario de Telemática II 18 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Anatomía de Aplicaciones J2ME CHM-2008 Seminario de Telemática II 19 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Componentes del Software MIDP CHM-2008 Seminario de Telemática II 20 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Ventajes de MIDP • • Portabilidad: – Una aplicación escrita usando MIDP puede ser directamente portable en cualquier dispositivo MIDP. – La característica multi-plataforma es prácticamente transparente. Seguridad: – Seguro para ejecutar aplicaciones descargadas. – La aplicación no puede escapar del confinamiento JVM. – Permite aplicaciones firmadas. CHM-2008 Seminario de Telemática II 21 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Construcción de MIDlets CHM-2008 Seminario de Telemática II 22 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Herramientas Básicas • J2ME Wireless Toolkit de Sun: http://java.sun.com/products/sjwtoolkit/ – Contiene las herramientas básicas para construir y empaquetar MIDlets. • Ofuscador: http://wireless.java.sun.com/midp/ttips/proguard/ – Reduce el tamaño del MIDlet. CHM-2008 Seminario de Telemática II 23 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica IDEs Disponibles • • • • • • • • Borland JBuilder MobileSet: http://www.borland.com/jbuilder/mobileset/ IBM WebSphere Studio Device Developer: http://www3.ibm.com/software/pervasive/products/wsdd/ Metrowerks CodeWarrior Wireless Studio: http://www.metrowerks.com/MW/Develop/Wireless/Wireless_Studio/defau lt.htm Research In Motion BlackBerry Java Development Environment: http://www.blackberry.net/developers/na/java/start/download.shtml Sun ONE Studio, Mobile Edition: http://wwws.sun.com/software/sundev/jde/features/me-features.html Zucotto Wireless WHITEboard SDK: http://www.zucotto.com/products/wb/whiteboard.html Netbeans: http://www.netbeans.org/ Eclipse: http://www.eclipse.org/ CHM-2008 Seminario de Telemática II 24 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Otras Herramientas • Ant: – Es una herramienta para automatizar la compilación. – Es similar a “make”. – Es open source, parte del proyecto Apache Jakarta: http://ant.apache.org CHM-2008 Seminario de Telemática II 25 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Ejemplo • • Construcción con Wireless Toolkit Construcción con Netbeans CHM-2008 Seminario de Telemática II 26 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica MIDlets CHM-2008 Seminario de Telemática II 27 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica MIDlets • • • Las aplicaciones son una instancia de javax.microedition.midlet.MIDlet. Tienen un ciclo de vida específico respecto de métodos y comportamientos de la clase MIDlet. Una parte del software del dispositivo es el Application Manager, que controla la instalación, ejecución y ciclo de vida del MIDlet. CHM-2008 Seminario de Telemática II 28 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Ciclo de Vida del MIDlet • Un MIDlet pasa a través de los siguientes estados: – – – – – CHM-2008 Cuando se ejecuta el MIDlet, se crea una instancia de éste. Se ejecuta el constructor y el MIDlet pasa a estado Pausado. A continuación, el MIDlet entra en estado Activo luego que el application manager llama a startApp(). Cuando el MIDlet está en estado Activo, el aplicación manager puede suspender la ejecución llamando a pauseApp(). Esto pone al MIDlet en Pausado. Un MIDlet puede ponerse en Pausado por si mismo si llama al notifyPaused(). Cuando el MIDlet está en estado Pausado, el applicaction manager puede llamar a startApp() para volver el MIDlet a estado activo. El application manager puede terminar la ejecución del MIDlet llamando a destroyApp(). Un MIDlet se puede terminar así mismo llamando a notifyDestroyed(). Seminario de Telemática II 29 Capítulo 5 Universidad Técnica Federico Santa María Departamento de Electrónica Ciclo de Vida del MIDlet CHM-2008 Seminario de Telemática II 30