La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

JME Java Micro Edition.

Presentaciones similares


Presentación del tema: "JME Java Micro Edition."— Transcripción de la presentación:

1 JME Java Micro Edition

2 Índice Introducción: Midlet Introducción a la interfaz de Alto nivel
Introducción a la interfaz de Bajo nivel RMS LWUIT Sugerencias

3 JME: Introducción Midlet
Ejemplo MIDlet Elementos

4 Midlet: Introducción JME es Java con menos librerías
JME abarca un gran tipo de dispositivos limitados no sólo teléfonos móviles Mencionar que hay mucho tipos de móviles y lo que se busca agrupar de alguna forma los dispositivos, eso son los perfiles

5 Midlet: Introducción Configuraciones: Perfiles:
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

6 Midlet: Introducción - 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

7 DEMO

8 Midlet Dos puntos de visión ¿Cómo se ejecuta?
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

9 Midlet: AMS ¿Que es AMS? Funcionalidad
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

10 Midlet: Ciclo 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 - 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

11 Midlet: Código

12 Midlet: Jerarquía de clases
Las clases Específicas de JME son las siguientes

13 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)

14 JME: Introducción a la Interfaz de Alto Nivel
Elementos Alto Nivel List Alert TextBox Form Hablar

15 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

16 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

17 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

18 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 ADDR - Sólo una dirección de 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

19 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

20 JME: Introducción a la Interfaz de Bajo Nivel
Canvas Elementos Importantes Ejemplos Juegos Sprite

21 GUI Bajo Nivel: Introducción
Trabaja a nivel de pixel Punto (0,0)  Esquina superior izquierda Control de eventos Teclado Comandos Eventos pantalla táctiles Permite dibujar primitivas Graficas Escribir texto Dibujar imágenes

22 Canvas: primitivas Graficas

23 Canvas: Texto

24 Canvas: Elementos Importantes
Eventos Teclado Se controlan mediante las funciones keyPressed, keyReleased, keyRepeated Teclas KEY_NUM0, KEY_NUM1, KEY_NUM2,… KEY_NUM9, KEY_STAR y KEY_POUND Game Actions getGameAction o getKeyCode UP, DOWN, LEFT, RIGHT, FIRE, GAME_A, GAME_B, GAME_C y GAME_D. Clase base que para la escritura de aplicaciones que necesitan el manejo de eventos a bajo nivel y dibujo de gráficos.

25 Canvas: Elementos Importantes
Eventos pantalla táctiles Se controlan mediante las funciones pointerDragged, pointerPressed, pointerReleased Comprobar si hay pantalla tacil: hasPointerEvents.

26 Canvas: Elementos Importantes
Método Paint Método mediante el cual pintamos todos los elementos en pantalla Graphics: Objeto que nos proporciona las primitivas para pintar todos los elementos por pantalla: drawArc, drawChar, drawImage, drawLine, fillRect, translate… Se llama mediante el método repaint

27 Juegos: Canvas Implementación de todos los métodos necesarios
Animaciones: movimiento de las figuras por pantalla. Detección de Colisiones entre figuras del juego Acciones: Diferentes eventos que se desencadenan al haber una colisión.

28 Juegos: Canvas DEMO

29 Juegos: Sprite Es un elemento visual que almacena una imagen, que contiene un único dibujo o bien varios dibujos. Nos permite Detectar colisiones: Cuadrados y pixel Realizar animaciones indicando la secuencia de frames Indicar un punto de referencia de la imagen

30 Juegos: Sprite DEMO

31 JME: RMS Introducción RecordStore Record

32 RMS Sencillo sistema de almacenamiento Almacenamiento permanente
Compuesto por Record Stores Sincronización implementada Registro accesible desde cualquier MIDlet

33 RMS: RecordStore Colección de registros
La plataforma mantiene su integridad Borrar MIDlet  borra RecordStore Manipulación de RecordStore: openRecordStore: abre/crea un RecordStore closeRecordStore: cierra un RecordStore deleteRecordStore: borra un RecordStore

34 RMS: records Identificados por recordID:int
1er registros  recordID =1 Manipulación de registros: addRecord: añade un registro deleteRecord: borra un registro getRecord: obtiene los datos de un registro setRecord: establece los datos de un registro

35 LWUIT Introducción Ideas Básicas Style Themes Painters
Fichero de recursos Animaciones Transiciones Layout Managers

36 LWUIT: Introducción Librería grafica Dispositivos de gama alta
Altamente portable Librería Open Source Basado en MIDP 2.0 y Canvas No solo es para Moviles Framework en NetBeans 7.0

37 LWUIT: Ideas Basicas Trabajar con LWUIT
Descargar librería https://lwuit.dev.java.net/ Agregar librería al proyecto

38 LWUIT:Hola Mundo DEMO

39 LWUIT: Style Atributos de los componentes
Colores Normal Enfocado Fuente Transparencia Imagen Margen, Relleno Bordes Painter Guardado por defecto en archivo .res

40 LWUIT: Themes Colección de estilos (styles)
Declarado en un fichero .res Creado usando: Resource Editor (viene junta con la librería) Ant task Se puede cambiar en tiempo de ejecución

41 LWUIT: Themes

42 LWUIT: Painters Componente tiene asociado un painter
No es necesario redefinir paint() Define como pintar el fondo del elemento Personificar apariencia Painters Chain Relacionar varios painters Sensación de trabajar con layers

43 LWUIT: Fichero de recursos
Fichero binario de LWUIT Puede contener: Temas Fuentes Imágenes Animaciones Localización Creación Ant Resource Editor

44 LWUIT: Animaciones Interfaz simple Activación Desactivación
Animate(), si devuelve ‘True’ llama a paint() Activación No basta con agregar la animación Tenemos que notificar que es una animación Desactivación

45 LWUIT: Transiciones Transiciones predefinidas Extendibles Aplicable a:
Forms Dialogos Menu Componentes

46 LWUIT: Layout Managers
Agrupar elementos Divididos en regiones Mediante Containers podemos anidarlos

47 LWUIT: Demo Alto Nivel DEMO


Descargar ppt "JME Java Micro Edition."

Presentaciones similares


Anuncios Google