PDF de programación - INTRODUCCIÓN A LA PROGRAMACIÓN DE DISPOSITIVOS MÓVILES

<<>>
Imágen de pdf INTRODUCCIÓN A LA PROGRAMACIÓN DE DISPOSITIVOS MÓVILES

INTRODUCCIÓN A LA PROGRAMACIÓN DE DISPOSITIVOS MÓVILESgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 5 de Enero del 2018)
1.302 visualizaciones desde el 5 de Enero del 2018
172,0 KB
19 paginas
INTRODUCCIÓN A LA PROGRAMACIÓN DE

DISPOSITIVOS MÓVILES

CONTENIDO:

J2ME. Arquitectura
Conceptos Básicos
APIs Principales
MIDLets
Herramientas de Desarrollo
Ejemplo

BIBLIOGRAFÍA:
[Gal] Java a Tope: J2ME. Gálvez&Ortega. U. de Málaga
[Fro] J2ME: Manual de Usuario y Tutorial. Froufe et al. Ed. Rama.

INTRODUCCIÓN A JAVA2

JAVA2

http://java.sun.com

• J2EE (Java 2 Enterprise Edition)
• J2SE (Java 2 Standard Edition)
• J2ME (Java 2 Mobile Edition)

J2SE vs J2ME
• J2ME no soporta tipos de datos como float ni

doubles.

• La verificación del código en J2SE se hace en
tiempo de ejecución mientras que en J2ME se hace
off-line.

• J2ME añade dos nuevos tipos de ficheros: .jad y

manifiest.mf

• Nueva librería gráfica (javax.microedition.lcuid)


Inexistencia del método main(), sustituido por el
método startApp().

• Ausencia del recolector de basura de J2SE. La
los objetos a de hacerse

destrucción de
manualmente.

ARQUITECTURA J2ME

PERFILES

CONFIGURACIONES

KVM (Kilo Virtual Machine)

SISTEMA OPERATIVO

ARQUITECTURA J2ME

• KVM: Versión de la JVM pensada para dispositivos
de 16 ó 32 bits y memoria de 128 Kb. Mantiene sus
aspectos más importantes.

• CONFIGURACIÓN:

de
características de la KVM y librerías para un conjunto
de dispositivos.

Conjunto

mínimo

• PERFIL: Conjunto de API mínimas sobre una

configuración para una familia de dispositivos.

• PERFIL MIDP:

APIs java para creación de

interfaces, conexiones de red, audio seguridad, etc.

EJERCICIO

(cid:1) ¿Cuáles son las principales caracteríticas

de la KVM?

(cid:1) Analice las diferencias ente CDC y CLDC.

Elabore un documento con ellas llamado
cdc_vs_cldc.pdf

(cid:1) Establezca los requisitos principales de
CLDC. Elabora un documento llamado
cld_req.pdf

API CLDC: Paquetes Heredados

(cid:1) java.lang: subconjunto de sus homólogas en

j2se. No incluye Float y Double. Sí incluye
Object, Class, Thread, etc.

(cid:1) java.io: subcojunto de sus homólogas en

j2se.

(cid:1) java.util: subonjunto de sus homólogas en

j2se, incluyendo vector, stack, etc.

API CLDC: Paquetes Específicos

(cid:1) java.microedition.io: clase

Connector.

(cid:1) java.microedition.lcdui: interfaces

gráficas.

(cid:1) java.microedition.midlet: contiene

la clase MIDlet, que implemente las
aplicaciones.

MÁS CONCEPTOS
• MIDlet: Cualquier aplicación realizada en J2ME. Se
agrupan en ficheros jar. Un conjunto de MIDlet son
llamados MIDLetSuite. En J2ME es una clase de la
que hay que heredar forzosamente.

• MANIFIESTO (manifiest.mf): Fichero que describe
el contenido del jar. Contiene información acerca de
su tamaño, recursos que emplea, clase MIDlet que lo
forma, así como el perfil para el que está diseñado el
MIDlet.

• JAVA DESCRIPTOR (jad): Fichero parecido al
manifiesto que proporciona la información necesaria
al Application Management, el cual se encarga de
gestionar las descargas de MIDlet, así como evaluar
su compatibilidad.

CONCEPTOS PREVIOS

• EJEMPLO DE MANIFIESTO

MIDlet-1: prueba, icono.png

MIDlet-Name: prueba

MIDlet-Vendor: Universidad de Cádiz

MIDlet-Version: 1.0

MicroEdition-Configuration: CLDC-1.0

MicroEdition-Profile: MIDP-1.0

CONCEPTOS PREVIOS

• EJEMPLO DE DESCRIPTOR JAVA

MIDlet-1: prueba, icono.png

ej3MIDlet-Jar-Size: 1691

MIDlet-Jar-URL: http://neptuno.uca.es/prueba.jar

MIDlet-Name: prueba

MIDlet-Vendor: Universidad de Cádiz

MIDlet-Version: 1.0

MIDlet: GENERALIDADES

• MIDlet: Cualquier aplicación realizada en J2ME.
• Es el equivalente a un Applet de Java usando AWT.
• Cualquier MIDlet hereda forzosamente de la clase

MIDlet definida en javax.microedition.midlet.

• Un MIDlet puede estar en tres estados: ACTIVO,
PASIVO y DESTRUIDO. Por defecto un MIDlet está
en estado ACTIVO mientras no se pase a otro
estado.

MIDlet: COMPONENTES

Un MIDlet posee 3 métodos entre otros:

• startApp()(cid:2) Equivalente a un método main() de una

aplicación cualquiera en J2SE.

• destroyApp()(cid:2) Se liberan todos los recursos que
hayan sido declarados. Recuérdese que no existen
destructores ni recolector de basura en J2ME.

• pauseApp()(cid:2) Permite intercambiar de un MIDlet que se

está ejecutando pasándolo de activo a pasivo.

MIDlet: CICLO DE VIDA

PREVERIFICACIÓN

programa.java

compilador

intérprete

programa.class

preverificador

programa.class

verificador

programa.class=programa.class+atributos

HERRAMIENTAS J2ME
OBLIGATORIAS

(cid:3)J2SDK

(cid:3)J2METK (Java 2 ME Wireless Toolkit)

OPCIONALES

(cid:3)JBUILDER + MOBILE SET
(cid:3)SUN ONE STUDIO 4
(cid:3)NETBEANS + WTK

MIDLET “HOLA MUNDO”

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class HolaMIDlet

extends MIDlet implements CommandListener

{

}

}

private Form Formulario;
public HolaMIDlet()
{ Formulario = new Form("MIDlet Hola Mundo");
Formulario.append(new StringItem(null, "Hola mundo
cruel...!"));
Formulario.addCommand(new Command("Salir", Command.EXIT, 0));
Formulario.setCommandListener(this);

public void startApp() {
Display.getDisplay(this).setCurrent(Formulario); }

public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
public void commandAction(Command c, Displayable s)
{ notifyDestroyed(); }

EJERCICIO

(cid:1) Abrir MIDlet con JCreator
(cid:1) Ejecutar el WTK
(cid:1) Abrir “un nuevo proyecto”
(cid:1) Darle un nombre y establecer el nombre de

la clase que define al MIDlet

(cid:1) Plataforma objetivo: MSA
(cid:1) Guardar el código del MIDlet en la

subcarpeta … src de la carpeta del
proyecto (bajo apps)

OTROS MIDLETS

(cid:1) Descargue EventEx1.java y repita el

proceso

(cid:1) Abra el proyecto PhotoAlbum que
incorpora el WTK, compile y ejecute

(cid:1) Repita lo anterior con el proyecto

AudioAlbum
  • Links de descarga
http://lwp-l.com/pdf8204

Comentarios de: INTRODUCCIÓN A LA PROGRAMACIÓN DE DISPOSITIVOS MÓVILES (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad