Descargar la presentación
La descarga está en progreso. Por favor, espere
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 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
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.