DESARROLLO DE SOLUCIONES EMPRESARIALES MOVILES USANDO TECNOLOGIA SUN APLICACIONES MOVILES CON J2ME Ing. Ronald Criollo
AGENDA Introducción: Midlet Introducción a la interfaz de Alto nivel Introducción a la interfaz de Bajo nivel
INTRODUCCIÓN: MIDLET JME es Java con menos librerías JME abarca un gran tipo de dispositivos limitados no sólo teléfonos móviles
INTRODUCCIÓN: MIDLET Configuraciones: CDC (Connected Device Configuration) Dispositivos más potentes (TV con internet, sistemas Navegación). CVM CLDC(Connected Limited Device Configuration) Dispositivos de capacidad limitada (PDA, Móviles). Utilizan KVM Perfiles: MIDP (Mobile Information Device Profile) PDA Profile (Opcional) - Mencionar que las configuraciones es una agrupación de clases disponibles en un tipo de dispositivos Mencionar que los perfiles es una agrupación de clases que complementan una configuración y permiten la portabilidad de la portabilidad entre dispositivos Perfiles Configuración Foundation Profile (FP) CDC Personal Profile (PP) CDC Personal Basis Profile (PBP) CDC MIDP CLDC PDA Profile CLDC
INTRODUCCIÓN: MIDLET
MIDLET Dos puntos de visión Clase superior jerarquía JME Aplicación en si ¿Cómo se ejecuta? No tiene Main Ni las configuraciones ni los perfiles poseen Main Se encarga de el AMS (Application Management System) MIDP no cubre: – Descarga y gestión de aplicaciones (MIDlets) en los dispositivos – Seguridad a bajo nivel – Seguridad a nivel de aplicación – Seguridad extremo-extremo
MIDLET: AMS ¿Que es AMS? Programa pre-instalado dependiente del dispositivo Dependiente de la implementación de JME del fabricante Funcionalidad Gestiona la descarga de los Midlet Gestiona la ejecución de los Midlet Controla el acceso a los recursos del dispositivo - Es el que comprueba el descriptor del midlet si es correcto o no y comienza la descarga - Llama a los métodos pertinentes para pintar en pantalla, controlar el teclado, los comandos - Si nos llaman corta la aplicación y luego vuelve a ejecutarla
MIDLET: CICLO DE VIDA El AMS llama a los siguientes métodos para controlar la vida de un Midlet starApp pauseApp destroyApp Genera el siguiente ciclo de vida
MIDLET: CÓDIGO
Midlet: Jerarquía de clases Las clases Específicas de JME son las siguientes
Midlet: API y JSR JME esta compuesto por varias APIs o JSRs (Java Specification Request) API Alto Nivel API Bajo Nivel RMS LWUIT Bluetooth MMAPI … JSR: son documentos formales que describen las especificaciones y tecnologías propuestas para que sean añadidas a la plataforma Java y es llevado por Java Community Process (JCP)
JME: Introducción a la Interfaz de Alto Nivel Elementos Alto Nivel List Alert TextBox Form
GUI Alto Nivel: Introducción Ventajas Facilidad de uso Rapidez en el desarrollo Portabilidad Desventajas Incapacidad de manejar funciones de bajo nivel Poca flexibilidad con componentes prefabricados
GUI Alto Nivel: List Mediante la clase List podemos crear listas de elementos seleccionables. Tipos: EXCLUSIVE - Sólo se puede seleccionar un elemento IMPLICIT - Se selecciona el elemento que tiene el foco MULTIPLE - Permite la selección múltiple
GUI Alto Nivel: Alert Permiten mostrar una pantalla durante un tiempo o hasta que se produzca un comando de tipo OK. Se utiliza para mostrar errores u otro tipo de mensajes al usuario. Tipos ALARM CONFIRMATION ERROR INFO WARNING
GUI Alto Nivel: TextBox La clase TextBox permite introducir y editar texto a pantalla completa. Es como un pequeño editor de textos. Las limitaciones pueden ser alguna de los siguientes: ANY - Sin limitación EMAILADDR - Sólo una dirección de email NUMERIC - Sólo se permiten números PASSWORD - Los caracteres no serán visibles PHONENUMBER - Sólo números de teléfono URL - Sólo direcciones URL
GUI Alto Nivel: Form Un Form es un elemento de tipo contenedor, es decir, es capaz de contener una serie de elementos visuales con los que podemos construir interfaces más elaboradas no más vistosas. - Item: superclase de los componentes que se pueden agregar a un Form -ChoiceGroup: similar al list - DateField: se utiliza para fechas - TextField: similar al TextBox pero menos pantalla - StringItem: String - Imageltem - Gauge - Spacer - CustomItem