Download J2ME : Micro Java

Document related concepts
no text concepts found
Transcript
Introducción a J2ME
Java para dispositivos
móviles
JEFI – 27 de Octubre de 2004
Joaquín Alvarez
Rosario Monteverde
Tutor de la ayudantía: Andrés de Sosa
Introducción
• J2ME provee de un entorno de desarrollo para
la creación de aplicaciones para dispositivos
móviles.
• Tal como J2EE o J2SE, J2ME incluye JVMs y un
conjunto de APIs para el desarrollo.
• Las aplicaciones basadas en las
especificaciones de J2ME se escriben para un
conjunto amplio de dispositivos, pero pueden
aprovechar las capacidades especificas de cada
uno de ellos.
Introducción
La plataforma J2ME se encuentra implementada en millones
de dispositivos, y es en definitiva la plataforma elegida hoy
en día para la programación de dispositivos móviles.
Componentes del ambiente J2ME
Componentes del ambiente J2ME
• El entorno de desarrollo J2ME
– Configurations (configuraciones)
– Profiles (perfiles)
– Extensions (extensiones)
Configuraciones
• Las Configuraciones (Configurations) están
compuestas por:
• Java Virtual Machine
• Conjunto mínimo de clases base.
• Proveen la funcionalidad básica para un cierto
conjunto de dispositivos con características
similares de memoria, conectividad a la red, etc.
• Existen dos tipos de configuraciones
• Connected Limited Device Configuration (CLDC)
• Connected Device Configuration (CDC)
Configuraciones (cont)
• CLDC es la configuración más pequeña.
• Se utiliza para dispositivos con poca memoria y
procesadores lentos (teléfonos celulares, PDAs)
• CDC es para dispositivos con más memoria y
procesadores más rápidos como ser
dispositivos de vehículos, y PDAs muy potentes.
Incluye un subset mucho más grande de J2SE,
y una JVM más completa que CLDC.
Perfiles
• Para completar el entorno de desarrollo para
una categoría específica de dispositivos, se
necesita un “Perfil” (Profile)
• Es un Conjunto de APIs de más alto nivel que
permiten acceder a propiedades específicas del
dispositivo, definir la interfaz de usuario, etc).
• Hay 4 perfiles básicos:
•
•
•
•
MIDP
Foundation Profile
Personal Profile
Personal Basis Profile.
Extensiones
• La plataforma J2ME puede extenderse
mediante el uso de paquetes opcionales
• Dichos paquetes ofrecen por ejemplo APIs
standard para multimedia, Bluetooth, y
otras tecnologías emergentes.
• Al ser modulares se evita el overhead de
cargar con funcionalidad adicional que no
se utiliza.
Ejemplo de entorno J2ME
• Un ejemplo es combinar CLDC con el
“Mobile Information Device Profile” (MIDP)
para proveer un entorno de desarrollo
para teléfonos celulares.
MIDP
CLDC
VM
APLICACIÓN
J2ME
Requerimientos en los dispositivos
• Para que cualquier dispositivo pueda ejecutar
aplicaciones j2me, debe contar con una
máquina virtual que forme parte de su software.
• Los nuevos teléfonos móviles que vienen
preparados para las aplicaciones J2ME ya
incorporan la máquina virtual como parte del
software básico, denominada Kilobyte Virtual
Machine por su reducido tamaño.
Requerimientos en los dispositivos
• El soporte multiplataforma de J2ME abre el
camino para que dispositivos como PDA’s
incluyan esta tecnología.
• Para ello sólo tiene que existir una MV
específica para el sistema operativo del
dispositivo y una vía para poder instalarla.
• Al incorporar ya las PDA’s un mecanismo de
sincronización con el PC para la descarga de
archivos, la instalación de la KVM en el
dispositivo es inmediata.
Herramientas para desarrollo y pruebas
• Para comenzar a desarrollar en J2ME es necesario
tener instalado el J2SDK.
• Para compilar y probar los programas, puede
utilizarse el J2ME Wireless Toolkit
(www.java.sun.com).
• Existe además, software comercial para desarrollo:
– Sun ONE Studio
(http://wwws.sun.com/software/sundev/jde/)
– BlackBerry
(http://www.blackberry.com/developers/na/java/tools/jde/index.shtml)
– Plug-ins para Eclipse
(http://eclipseme.sourceforge.net/)
Ejemplo
• Para ejemplificar el desarrollo y prueba de
aplicaciones utilizaremos el J2ME
Wireless Toolkit que provee Sun.
• Esta compuesto básicamente por:
– Compilador J2ME
– Emulador de dispositivos
J2ME Wireless Toolkit
Prueba de aplicaciones
• Aplicaciones ya existentes
• Se pueden conseguir en la web
• Se deben colocar los archivos (.jar y .jad) en un
directorio del emulador y se ejecutan directamente.
• Aplicación nueva
• Se escribe el código en un editor de texto (por ej:
Notepad)
• Dicho código se guarda en un archivo con extensión
.java y se compila y ejecuta con la herramienta
Prueba de aplicaciones
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class HelloMIDlet extends MIDlet implements CommandListener {
private Form mMainForm;
public HelloMIDlet() {
mMainForm = new Form("HelloMIDlet");
mMainForm.append(new StringItem(null, “Hola JEFI!!!"));
mMainForm.addCommand(new Command("Exit", Command.EXIT,
0));
mMainForm.setCommandListener(this);
}
public void startApp() {
Display.getDisplay(this).setCurrent(mMainForm);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {}
public void commandAction(Command c, Displayable s) {
notifyDestroyed();
}
}
GRACIAS