SlideShare una empresa de Scribd logo
Midlets con J2ME Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
Contenido Definición Ciclo de vida de un  midlet Estado DETENIDO ( paused ) Estado ACTIVO ( active ) Estado DESTRUÍDO ( destroyed ) Métodos modificadores de estado Método  startApp() Método  pauseApp() Método  destroyApp(boolean) Relación entre  destroyApp()  y  notifyDestroyed() Método  notifyPaused() Método  resumeRequest() Entorno de ejecución
Definición Un  midlet  es una aplicación desarrollada utilizando la  plataforma J2ME  y construída sobre la  configuración CLDC  utilizando el  perfil MIDP . Los  midlets  son las aplicaciones que se desarrollan para los teléfonos móviles actuales, con soporte para  CLDC  1.0 ó 1.1 y  MIDP  1.0 ó 2.0. En el presente módulo se expondrá el ciclo de vida de estas aplicaciones y su entorno de ejecución.
Ciclo de vida de un  midlet El  midlet  en su ciclo de vida atraviesa tres tipos de estados diferentes:  pausado  ( paused ),  activo  ( active ) y  destruído  ( destroyed ).
Estado DETENIDO ( paused ) El  midlet  llega a este estado a través de dos caminos. Cuando es recién creado ( new ) y aún no ha sido invocado el método  startApp() . Cuando después de estar  activo  se invocado el método  pauseApp()  por parte del usuario o  notifyPaused()  por parte del dispositivo. En este estado la aplicación no se está ejecutando efectivamente pero se encuentra presente en la memoria RAM del dispositivo.  Ejemplo: entró una llamada al teléfono móvil durante la ejecución del  midlet .
Estado DETENIDO ( paused ) En este estado se espera que el  midlet  mantenga los recursos mínimos posibles liberando los demás para que sean utilizados por el dispositivo con la nueva aplicación activa. La aplicación queda en espera de una notificación asíncrona que modifique su estado actual. Puede pasar a estado  activo  si se ejecuta el método  startApp()  /  resumeRequest()  o a estado  destruído  si se ejecuta el método  destroyApp()  /  notifyDestroyed() .
Estado ACTIVO ( active ) El  midlet  puede llegar a este estado por dos motivos diferentes. Es la primera vez que se ejecuta y después de construído ( new ) el  midlet  es invocado el método  startApp() . Ya se encuentra ejecutando la aplicación y esta ha sido pausada por un llamado al método  pauseApp() .  El  midlet  se activa nuevamente con un llamado al método  resumeRequest() .
Estado ACTIVO ( active ) En este estado el  midlet  se está ejecutando propiamente. Puede pasar a estado  detenido  si se ejecuta el método  pauseApp()  o a estado  destruído  si se ejecuta el método  destroyApp()  /  notifyDestroyed() .
Estado DESTRUÍDO ( destroyed ) El  midlet  pasa a este estado si es ejecutado uno de estos métodos  destroyApp() / notifyDestroyed(). Después de entrar a este estado no podrá volver a hacer ninguna otra transición.  Su finalidad es la de concluír el ciclo de vida del  midlet  y terminar la aplicación.
Métodos modificadores de estado Tal y como se aprecia en el diagrama del  ciclo de vida de un midlet  las transiciones suceden como producto de la invocación de los siguientes métodos de la clase  MIDlet . startApp() / resumeRequest() . pauseApp() / notifyPaused() . destroyApp() / notifyDestroyed() . Los métodos nombrados anteriormente se describen a continuación.
Método  startApp() Este método es abstracto, debe ser definido por el  midlet  para reservar todos los recursos y establecer los valores iniciales de los atributos que vaya a necesitar en su estado activo. Debe tenerse muy en cuenta que  este método puede ser ejecutado en varias ocasiones : cuando se inicia por primera vez la aplicación y cada vez que el  midlet  pasa de estado  paused  a  active . Esto es particularmente importante en el momento de decidir donde realizar la creación de ciertos objetos: si en este método o en el constructor del  midlet .
Método  startApp() Como regla general en el método  startApp()  se reservarán los recursos que son liberados en el método  pauseApp() . También es necesario tener en cuenta para tomar esta decisión que el constructor del  midlet  tiene acceso al objeto  Display  (pantalla del dispositivo) solamente a partir del primer llamado al método  startApp() . El proceso de reserva de recursos puede fallar por motivos transitorios (usualmente recuperables) o por motivos permanentes (acostumbran a ser insoslayables y obligan a la terminación de la aplicación).
Método  startApp() Los problemas transitorios deberán lanzar una excepción de tipo  MIDletStateChangeException  para indicar su tipo y solicitarle al dispositivo que intente nuevamente la activación del  midlet .
Método  pauseApp() Este método es abstracto y deberá ser implementado por el  midlet . Es llamado cuando se va a detener temporalmente la ejecución de la aplicación y su función es la de garantizar la conservación del estado del  midlet  y liberar la mayor cantidad de recursos que no vayan a ser requeridos durante este estado de “hibernación”. Durante el estado  paused  el  midlet  no se encuentra formalmente activo, sin embargo está posibilitado para recibir mensajes de eventos asíncronos como temporizadores o recepción de mensajes vía  SMS .
Método  destroyApp(boolean) Este método implementado por el  midlet  es invocado por el sistema operativo o por la propia aplicación cuando esta ha de finalizar su ejecución. Su misión es la de liberar todos los recursos que el  midlet  haya reservado durante su ejecución para finalizar su ciclo de vida. El método recibe un argumento de tipo  booleano  que indica si la peticion de destrucción es incondicional ( true ) haciendo que se liberen todos los recursos para terminar la aplicación o si por el contrario, es opcional ( false ) permitiendo que esta se obvie al lanzarse una excepción de clase  MIDletStateChangeException  la cual si es manejada adecuadamente por la aplicación permitirá que el  midlet  permanezca en estado  active  rehusándose a ser finalizado .
destroyApp()  y  notifyDestroyed() Cuando es el dispositivo el interesado de terminar la ejecución del  midlet  es   este quien invoca sobre el segundo el método  destroyApp(true)  para solicitar su liberación de recursos y posterior destrucción. Cuando es el  midlet  mismo quien desea terminar su propia ejecución, este invocará el método  notifyDestroyed()  para informarle al sistema operativo sus intenciones.  Este método  no  ejecuta automáticamente al método  destroyApp()  toda vez que presupone que el  midlet  ya se encuentra listo para terminar su ejecución.
destroyApp()  y  notifyDestroyed() Como esta es la única forma que tiene un  midlet  para gestionar   su propia destrucción, es común que se realice un llamado a  destroyApp(false)  y se finalice con la invocación de  notifyDestroyed()  si no hubo contratiempos en el paso anterior.
destroyApp()  y  notifyDestroyed() Lo descrito anteriormente se ejemplifica con el siguiente código fuente. try { // Liberar recursos que haya reservado el  midlet destroyApp(false); // Notificar al sistema operativo su destrucción notifyDestroyed(); } catch(MIDletStateChangeException e) { // El  midlet  no se quiere destruír }
notifyPaused() Este método le informa al sistema operativo que el  midlet  desea pasar a estado  paused . Únicamente puede ser invocado cuando el  midlet  se encuentra en estado  active . Tiene la misma funcionalidad de la invocación del método  pauseApp()  por parte del dispositivo.
resumeRequest() Este método le indica al dispositivo que un  midlet  actualmente en estado  paused  está interesado en activarse.  El dispositivo puede reanudar al  midlet  invocando su método  startApp() .  Es funcionalmente antagónico al método  notifyPaused() . La invocación de este método acostumbra a ser provocada por una tarea que se ejecuta en segundo plano, un temporizador o un evento de orígen externo.
Entorno de ejecución Es el entorno en el que se ejecutan las aplicaciones J2ME basadas en  midlets  o en  suites  de  midlets  que implementen el perfil MIDP.  Una  suite  de  midlets  es un conjunto de  midlets  agrupados en un archivo  JAR  común. Por razones de seguridad la interacción entre  midlets  se encuentra restringida a los  midlets  que integren la misma  suite  (espacio de nombres). Las clases y recursos a los cuales tiene acceso un midlet deberán estar ubicados en la  librería CLDC , la  librería MIDP  o en el  archivo JAR  de la distribución, de lo contrario serán inaccesibles.
Entorno de ejecución El software del dispositivo que provee el entorno necesario para que las distribuciones de  midlets  puedan ser administradas: instaladas, actualizadas, eliminadas, ejecutadas y detenidas, es el  Application Management Software  (AMS) también conocido como  Java Application Manager  (JAM). El AMS también es responsable de realizar la segunda etapa de verificación de las clases del  midlet , la cual comprueba que se cumplan con todos los requerimientos de seguridad y sucede durante la instalación de la aplicación en el dispositivo. Recuérdese que una primera etapa de verificación ( preverify ) es realizada durante la etapa de desarrollo.
Fin de la presentación. Creative Commons (CC)

Más contenido relacionado

ODP
Disección del midlet Hola Mundo en J2ME
DOCX
Mi dlet
DOCX
Layout
PDF
9 implementacion (caso de uso)
PDF
UDA-Anexo gestión de excepciones
PDF
S7 1200 paso-a_paso_v1.0
PDF
Aplicación de una mezcladora de fluidos en Intouch
PPTX
Unidad 5 Programación de dispositivos moviles
Disección del midlet Hola Mundo en J2ME
Mi dlet
Layout
9 implementacion (caso de uso)
UDA-Anexo gestión de excepciones
S7 1200 paso-a_paso_v1.0
Aplicación de una mezcladora de fluidos en Intouch
Unidad 5 Programación de dispositivos moviles

Destacado (20)

PDF
Los MIDlets
PPTX
6 Lenguajes para dispositivos móviles
PPTX
Java Micro Edition "J2ME"
PDF
Java a tope: J2ME Java2 Micro Edition
PDF
J2me
PDF
Introducción a dispositivos_móviles
PPT
Presentacion j2me
PDF
Programacion java -_curso_j2_me
PPTX
Como y apps builder
PDF
Java A Tope J2 Me (Java 2 Micro Edition)
PDF
Java j2me pre
PDF
Patrones de diseño de interacción de interfaces móviles
PPT
J2me Presentacion
PDF
Patrones de Diseño Web (Getting Input - Obtención de Información) - Presentación
PDF
Modelo asignacion-programacion-lineal
PDF
Desarrollo de interfaz de usuario en un contexto mobile
PPTX
Software Utilitario
PDF
Diseno y usabilidad en aplicaciones móviles para iphone (ui app design)
PPT
Teoria de Colas
Los MIDlets
6 Lenguajes para dispositivos móviles
Java Micro Edition "J2ME"
Java a tope: J2ME Java2 Micro Edition
J2me
Introducción a dispositivos_móviles
Presentacion j2me
Programacion java -_curso_j2_me
Como y apps builder
Java A Tope J2 Me (Java 2 Micro Edition)
Java j2me pre
Patrones de diseño de interacción de interfaces móviles
J2me Presentacion
Patrones de Diseño Web (Getting Input - Obtención de Información) - Presentación
Modelo asignacion-programacion-lineal
Desarrollo de interfaz de usuario en un contexto mobile
Software Utilitario
Diseno y usabilidad en aplicaciones móviles para iphone (ui app design)
Teoria de Colas
Publicidad

Similar a Midlets con J2ME (20)

PDF
Los mi dlets_imprimible
PPTX
Patrones de diseño
DOCX
Manual Tecnico
PPT
Applets
PPT
Programación en Java: Applets
DOCX
Tarea3 fernando lopez
DOCX
Tarea3 fernando lopez
PPTX
unidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOS
PDF
Sistemas Operativos
PPTX
Clase tres
PPT
2da clase moviles_jme_alert_form_text_field_so_uch
DOCX
2.4 Cuestionario de comunicacion entre procesos
PPTX
Jade Agentes inteligentes básico
PDF
Unidad 4 preguntas
PDF
Desarrollo de sistemas tolerantes a fallas
PDF
Sistemas Tolerantes a Fallas
PDF
Taller de programación
Los mi dlets_imprimible
Patrones de diseño
Manual Tecnico
Applets
Programación en Java: Applets
Tarea3 fernando lopez
Tarea3 fernando lopez
unidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOS
Sistemas Operativos
Clase tres
2da clase moviles_jme_alert_form_text_field_so_uch
2.4 Cuestionario de comunicacion entre procesos
Jade Agentes inteligentes básico
Unidad 4 preguntas
Desarrollo de sistemas tolerantes a fallas
Sistemas Tolerantes a Fallas
Taller de programación
Publicidad

Más de Jorge Iván Meza Martínez (17)

PDF
Presentación grupo de investigación UAM, 201203
ODP
Presentación GridUAM 201112
ODP
Mercadeo en la era de la web 2.0, UniQuindio 20110517
PDF
GridUAM, presentación del proyecto - 20110128
ODT
Charla introducción a processing - 2010/09
ODP
Presentación introducción taller cluster 2010/07
ODP
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
ODP
Instalacion Básica De Drupal 6
ODP
Buscador de Talento Amigo - Presentación
ODP
Práctica: distribución de midlets mediante OTA con J2ME - parte I
ODP
Generación del midlet HolaMundo utilizando EclipseME
ODP
Generación del midlet HolaMundo utilizando las herramientas de línea de comando
ODP
Introducción a Kohana Framework
ODP
Generación del midlet HolaMundo utilizando el JWTK
ODP
Introducción a la plataforma J2ME
ODP
Desarrollo de Mi Primer Mapplet
ODP
Introducción al desarrollo de Google Mapplets
Presentación grupo de investigación UAM, 201203
Presentación GridUAM 201112
Mercadeo en la era de la web 2.0, UniQuindio 20110517
GridUAM, presentación del proyecto - 20110128
Charla introducción a processing - 2010/09
Presentación introducción taller cluster 2010/07
Historia breve de un compromiso de seguridad - Instalación de RedHat 8.0
Instalacion Básica De Drupal 6
Buscador de Talento Amigo - Presentación
Práctica: distribución de midlets mediante OTA con J2ME - parte I
Generación del midlet HolaMundo utilizando EclipseME
Generación del midlet HolaMundo utilizando las herramientas de línea de comando
Introducción a Kohana Framework
Generación del midlet HolaMundo utilizando el JWTK
Introducción a la plataforma J2ME
Desarrollo de Mi Primer Mapplet
Introducción al desarrollo de Google Mapplets

Último (20)

PPTX
Sesion 1 de microsoft power point - Clase 1
PPTX
El uso de las TIC en la vida cotidiana..
PDF
Distribucion de frecuencia exel (1).pdf
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PDF
MANUAL de recursos humanos para ODOO.pdf
PPTX
modulo seguimiento 1 para iniciantes del
PPT
Protocolos de seguridad y mecanismos encriptación
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PDF
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PDF
CyberOps Associate - Cisco Networking Academy
PDF
Documental Beyond the Code (Dossier Presentación - 2.0)
PPTX
ccna: redes de nat ipv4 stharlling cande
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PPTX
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
PDF
Diapositiva proyecto de vida, materia catedra
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
Sesion 1 de microsoft power point - Clase 1
El uso de las TIC en la vida cotidiana..
Distribucion de frecuencia exel (1).pdf
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
MANUAL de recursos humanos para ODOO.pdf
modulo seguimiento 1 para iniciantes del
Protocolos de seguridad y mecanismos encriptación
Power Point Nicolás Carrasco (disertación Roblox).pptx
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
Historia Inteligencia Artificial Ana Romero.pptx
TRABAJO DE TECNOLOGIA.pdf...........................
CyberOps Associate - Cisco Networking Academy
Documental Beyond the Code (Dossier Presentación - 2.0)
ccna: redes de nat ipv4 stharlling cande
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
la-historia-de-la-medicina Edna Silva.pptx
Mecanismos-de-Propagacion de ondas electromagneticas
Diapositiva proyecto de vida, materia catedra
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN

Midlets con J2ME

  • 1. Midlets con J2ME Jorge Iván Meza Martínez < [email_address] > http://www.jorgeivanmeza.com/ http://educacion.misservicios.net/
  • 2. Contenido Definición Ciclo de vida de un midlet Estado DETENIDO ( paused ) Estado ACTIVO ( active ) Estado DESTRUÍDO ( destroyed ) Métodos modificadores de estado Método startApp() Método pauseApp() Método destroyApp(boolean) Relación entre destroyApp() y notifyDestroyed() Método notifyPaused() Método resumeRequest() Entorno de ejecución
  • 3. Definición Un midlet es una aplicación desarrollada utilizando la plataforma J2ME y construída sobre la configuración CLDC utilizando el perfil MIDP . Los midlets son las aplicaciones que se desarrollan para los teléfonos móviles actuales, con soporte para CLDC 1.0 ó 1.1 y MIDP 1.0 ó 2.0. En el presente módulo se expondrá el ciclo de vida de estas aplicaciones y su entorno de ejecución.
  • 4. Ciclo de vida de un midlet El midlet en su ciclo de vida atraviesa tres tipos de estados diferentes: pausado ( paused ), activo ( active ) y destruído ( destroyed ).
  • 5. Estado DETENIDO ( paused ) El midlet llega a este estado a través de dos caminos. Cuando es recién creado ( new ) y aún no ha sido invocado el método startApp() . Cuando después de estar activo se invocado el método pauseApp() por parte del usuario o notifyPaused() por parte del dispositivo. En este estado la aplicación no se está ejecutando efectivamente pero se encuentra presente en la memoria RAM del dispositivo. Ejemplo: entró una llamada al teléfono móvil durante la ejecución del midlet .
  • 6. Estado DETENIDO ( paused ) En este estado se espera que el midlet mantenga los recursos mínimos posibles liberando los demás para que sean utilizados por el dispositivo con la nueva aplicación activa. La aplicación queda en espera de una notificación asíncrona que modifique su estado actual. Puede pasar a estado activo si se ejecuta el método startApp() / resumeRequest() o a estado destruído si se ejecuta el método destroyApp() / notifyDestroyed() .
  • 7. Estado ACTIVO ( active ) El midlet puede llegar a este estado por dos motivos diferentes. Es la primera vez que se ejecuta y después de construído ( new ) el midlet es invocado el método startApp() . Ya se encuentra ejecutando la aplicación y esta ha sido pausada por un llamado al método pauseApp() . El midlet se activa nuevamente con un llamado al método resumeRequest() .
  • 8. Estado ACTIVO ( active ) En este estado el midlet se está ejecutando propiamente. Puede pasar a estado detenido si se ejecuta el método pauseApp() o a estado destruído si se ejecuta el método destroyApp() / notifyDestroyed() .
  • 9. Estado DESTRUÍDO ( destroyed ) El midlet pasa a este estado si es ejecutado uno de estos métodos destroyApp() / notifyDestroyed(). Después de entrar a este estado no podrá volver a hacer ninguna otra transición. Su finalidad es la de concluír el ciclo de vida del midlet y terminar la aplicación.
  • 10. Métodos modificadores de estado Tal y como se aprecia en el diagrama del ciclo de vida de un midlet las transiciones suceden como producto de la invocación de los siguientes métodos de la clase MIDlet . startApp() / resumeRequest() . pauseApp() / notifyPaused() . destroyApp() / notifyDestroyed() . Los métodos nombrados anteriormente se describen a continuación.
  • 11. Método startApp() Este método es abstracto, debe ser definido por el midlet para reservar todos los recursos y establecer los valores iniciales de los atributos que vaya a necesitar en su estado activo. Debe tenerse muy en cuenta que este método puede ser ejecutado en varias ocasiones : cuando se inicia por primera vez la aplicación y cada vez que el midlet pasa de estado paused a active . Esto es particularmente importante en el momento de decidir donde realizar la creación de ciertos objetos: si en este método o en el constructor del midlet .
  • 12. Método startApp() Como regla general en el método startApp() se reservarán los recursos que son liberados en el método pauseApp() . También es necesario tener en cuenta para tomar esta decisión que el constructor del midlet tiene acceso al objeto Display (pantalla del dispositivo) solamente a partir del primer llamado al método startApp() . El proceso de reserva de recursos puede fallar por motivos transitorios (usualmente recuperables) o por motivos permanentes (acostumbran a ser insoslayables y obligan a la terminación de la aplicación).
  • 13. Método startApp() Los problemas transitorios deberán lanzar una excepción de tipo MIDletStateChangeException para indicar su tipo y solicitarle al dispositivo que intente nuevamente la activación del midlet .
  • 14. Método pauseApp() Este método es abstracto y deberá ser implementado por el midlet . Es llamado cuando se va a detener temporalmente la ejecución de la aplicación y su función es la de garantizar la conservación del estado del midlet y liberar la mayor cantidad de recursos que no vayan a ser requeridos durante este estado de “hibernación”. Durante el estado paused el midlet no se encuentra formalmente activo, sin embargo está posibilitado para recibir mensajes de eventos asíncronos como temporizadores o recepción de mensajes vía SMS .
  • 15. Método destroyApp(boolean) Este método implementado por el midlet es invocado por el sistema operativo o por la propia aplicación cuando esta ha de finalizar su ejecución. Su misión es la de liberar todos los recursos que el midlet haya reservado durante su ejecución para finalizar su ciclo de vida. El método recibe un argumento de tipo booleano que indica si la peticion de destrucción es incondicional ( true ) haciendo que se liberen todos los recursos para terminar la aplicación o si por el contrario, es opcional ( false ) permitiendo que esta se obvie al lanzarse una excepción de clase MIDletStateChangeException la cual si es manejada adecuadamente por la aplicación permitirá que el midlet permanezca en estado active rehusándose a ser finalizado .
  • 16. destroyApp() y notifyDestroyed() Cuando es el dispositivo el interesado de terminar la ejecución del midlet es este quien invoca sobre el segundo el método destroyApp(true) para solicitar su liberación de recursos y posterior destrucción. Cuando es el midlet mismo quien desea terminar su propia ejecución, este invocará el método notifyDestroyed() para informarle al sistema operativo sus intenciones. Este método no ejecuta automáticamente al método destroyApp() toda vez que presupone que el midlet ya se encuentra listo para terminar su ejecución.
  • 17. destroyApp() y notifyDestroyed() Como esta es la única forma que tiene un midlet para gestionar su propia destrucción, es común que se realice un llamado a destroyApp(false) y se finalice con la invocación de notifyDestroyed() si no hubo contratiempos en el paso anterior.
  • 18. destroyApp() y notifyDestroyed() Lo descrito anteriormente se ejemplifica con el siguiente código fuente. try { // Liberar recursos que haya reservado el midlet destroyApp(false); // Notificar al sistema operativo su destrucción notifyDestroyed(); } catch(MIDletStateChangeException e) { // El midlet no se quiere destruír }
  • 19. notifyPaused() Este método le informa al sistema operativo que el midlet desea pasar a estado paused . Únicamente puede ser invocado cuando el midlet se encuentra en estado active . Tiene la misma funcionalidad de la invocación del método pauseApp() por parte del dispositivo.
  • 20. resumeRequest() Este método le indica al dispositivo que un midlet actualmente en estado paused está interesado en activarse. El dispositivo puede reanudar al midlet invocando su método startApp() . Es funcionalmente antagónico al método notifyPaused() . La invocación de este método acostumbra a ser provocada por una tarea que se ejecuta en segundo plano, un temporizador o un evento de orígen externo.
  • 21. Entorno de ejecución Es el entorno en el que se ejecutan las aplicaciones J2ME basadas en midlets o en suites de midlets que implementen el perfil MIDP. Una suite de midlets es un conjunto de midlets agrupados en un archivo JAR común. Por razones de seguridad la interacción entre midlets se encuentra restringida a los midlets que integren la misma suite (espacio de nombres). Las clases y recursos a los cuales tiene acceso un midlet deberán estar ubicados en la librería CLDC , la librería MIDP o en el archivo JAR de la distribución, de lo contrario serán inaccesibles.
  • 22. Entorno de ejecución El software del dispositivo que provee el entorno necesario para que las distribuciones de midlets puedan ser administradas: instaladas, actualizadas, eliminadas, ejecutadas y detenidas, es el Application Management Software (AMS) también conocido como Java Application Manager (JAM). El AMS también es responsable de realizar la segunda etapa de verificación de las clases del midlet , la cual comprueba que se cumplan con todos los requerimientos de seguridad y sucede durante la instalación de la aplicación en el dispositivo. Recuérdese que una primera etapa de verificación ( preverify ) es realizada durante la etapa de desarrollo.
  • 23. Fin de la presentación. Creative Commons (CC)