Download Configuración CLDC Diferencias de CLDC con J2SE

Document related concepts
no text concepts found
Transcript
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Universidad de Jaén
E.U.P. Linares
Dpto. Telecomunicaciones
Área de Ingeniería Telemática
Sebastián García Galán
[email protected]
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Connected Limited Device Configuration
Ø
Ø
Ø
Ø
Ø
Introducción
Objetivos y requerimientos
Diferencias de CLDC con J2SE
Seguridad en CLDC
Librerías CLDC
Compatibilidad
Clases heredadas de J2SE
Clases propias de CLDC
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Introducción
La configuración CLDC se encarga de las siguientes áreas:
Ø
Ø
Ø
Ø
Ø
Ø
Lenguaje Java y características de la máquina virtual.
Librerías del núcleo de Java (java.util.* y java.lang.*).
Entrada / Salida.
Comunicaciones.
Seguridad.
Internacionalización.
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Objetivos y Requerimientos
Una configuración de J2ME especifica un subconjunto de
características soportadas por el lenguaje java, un subconjunto de
funciones de la configuración para la máquina virtual de Java, el
trabajo en red, seguridad, instalación, y posiblemente, otras APIs de
programación, todo lo necesario para soportar cierto tipo de
productos.
CLDC es la base para uno o más perfiles. Un perfil define un
conjunto adicional de APIs y características para un mercado
concreto, dispositivo determinado o industria.
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Objetivos y Requerimientos
Objetivos:
Extensibilidad: Permitir el uso del lenguaje de programación
Java como base para la distribución de contenido dinámico
para la próxima generación de dispositivos.
Desarrollo de aplicaciones por terceras partes: La
especificación CLDC solo deberá incluir librerías de alto nivel
que proporcionen suficiente capacidad de programación para
desarrollar aplicaciones por terceras partes.
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Objetivos y Requerimientos
Requerimientos Hardware:
Ø
Ø
128 KB de memoria no volátil para la JVM y las librerías CLDC.
Al menos 32KB de memoria volátil para el entorno de ejecución Java
y objetos en memoria.
Requerimientos Software: El dispositivo contiene un mínimo S.O.. Este
S.O. Debe proporcionar al menos una entidad de planificación para ejecutar
el JVM.
Requerimientos J2ME:
Ø
Ø
Todas las características incluidas en una configuración deben ser
generalmente aplicables a una gran variedad de dispositivos.
Una configuración no debe definir ninguna característica opcional.
(funcionalidades más específicas deben ser definidas en los perfiles)
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Diferencias de CLDC con J2SE
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
No existe soporte para operaciones en coma flotante.
No existe finalización de objetos.
Limitaciones en el manejo de errores.
Java Native Interface (JNI).
Cargadores de clase definidos por el usuario.
Reflexión.
Grupos de threads o daemon threads.
Referencias débiles
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Seguridad en CLDC
Al igual que los applets, los programas se ejecutan en una zona
de seguridad denominada sandbox.
Según este modelo, sólo se pueden ejecutar algunas acciones
que se consideran seguras. De forma que las aplicaciones
deben cumplir unas condiciones previas:
Ø
Ø
Ø
Ø
Ø
Los ficheros de clases Java deben ser verificados como
aplicaciones Java válidas.
Sólo se permite el uso de APIs autorizadas por CLDC.
No esta permitido cargar clases definidas por el usuario.
Sólo se puede acceder a características nativas que
entren dentro del CLDC.
Una aplicación ejecutada bajo KVM no debe ser capaz de
dañar el dispositivo donde se encuentra
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Librerías CLDC
Compatibilidad:
La mayoría de las clases incluidas en CLDC son un subconjunto de
las incluidas en J2SE y J2EE. Sin embargo las dependencias
internas hacen muy difícil tomar partes de una librería sin incluir
otras. Por lo que algunas librerías se han rediseñado.
Por lo tanto, las librerías CLDC se dividen en dos categorías:
Ø
Ø
Clases que son un subconjunto de las librerías de J2SE.
Clases específicas de CLDC.
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Librerías CLDC
Clases de sistema
java.lang.Class
java.lang.Object
java.lang.Runnable
java.lang.Runtime
java.lang.String
java.lang.Stringbuffer
java.lang.System
java.lang.Thread
java.lang.Throwable
Clases heredadas de J2SE
Clases de datos
Clases de utilidades
java.lang.Boolean
java.lang.Byte
java.lang.Character
java.lang.Integer
java.lang.long
java.lang.Short
java.util.Calendar
java.util.Date
java.util.Enumeration
java.util.Hashtable
java.util.Random
java.util.Stack
java.util.TimeZone
java.util.Vector
Clases de E/S
java.io.InputStreamReader
java.io.ByteArrayInputStream
java.io.ByteArrayOutputStream java.io.OutputStream
java.io.OutputStreamWriter
java.io.DataInput
java.io.PrintStream
java.io.DataOutput
java.io.Reader
java.io.DataInputStream
java.io.Writer
java.io.DataOutputStream
INGENIERÍA DEjava.io.InputStream
TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES -- ÁREA DE INGENIERÍA TELEMÁTICA
DESARROLLO DE APLICACIONES
APLICACIONES PARA TELEFONÍA MÓVIL
Configuración CLDC
Librerías CLDC
Clases propias de CLDC
Estas clases sustituyen a las incluidas en java.io y java.net de J2SE
Generic Connection Framework
Clases de E/S
Descripción
Connector
Connection
InputConnection
OutputConnection
StreamConnection
ContentConnection
Datagram
DatagramConnection
StreamConnectionNotifier
Puede crear cualquier tipo de conexión
Define el tipo de conexión más genérica
Define una conexión de streams de entrada
Define una conexión de streams de salida
Define una conexión basada en stream
Extensión de StreamConnection para trabajar con datos
Interfaz genérico de datagramas
Define una conexión basada en datagramas
Notifica una conexión.
Permite crear una conexión en el lado del servidor.
Incluidas en javax.microedition.io
INGENIERÍA DE TELECOMUNICACIÓN
DPTO. TELECOMUNICACIONES --
ÁREA DE INGENIERÍA TELEMÁTICA