Envía el desarrollo de esta actividad a tu tutor@ en un documento de Word, que llamarás
Evidencias 3. Procura marcar siempre tus trabajos con un encabezado como el siguiente: Nombre Juan cardona Fecha 09-11-2019 Actividad Evidencia 3 Tema Los MIDLETS
Preguntas interpretativas
La destrucción de un midlet no es lo mismo que su desinstalación
¿Por qué se puede afirmar esto? (2 puntos).
Se puede afirmar por que el Midlet, como todo en Java, es un objeto
(Que carga en si mismo a otros objetos, que hacen el Midlet). Por lo tanto, destruir el Midlet se refiere a la destrucción del objeto (Es decir, cuando se deja de ejecutar y el colector de basura limpia la memoria). Sin embargo, después puede volverlo a ejecutar y se crea un nuevo midlet. Desinstalarlo es, en cambio, borrarlo de la memoria del dispositivo. Y una vez hecho esto, no se podrá volver a ejecutar hasta que vuelvas a instalarlo.
1 Programación de dispositivos móviles
Actividad 3 El paquete de MIDP posee diversas clases que le permiten crear MIDlets. A partir del estudio de ellos, ¿Cuáles son los alcances que otorga este paquete? (2 puntos).
La aplicación debe extender a esta clase para que el pueda gestionar
sus estados y tener acceso a sus propiedades. El midlet puede por sí mismo realizar cambios de estado invocando a los métodos apropiados. los métodos de los que dispone esta clase son los siguientes: métodos protected midlet características constructor de clase sin argumentos. Si la llamada a este constructor falla, se lanzaría la excepción security exception public final int consigue el estado del permiso especificado. Este permiso checkpermission (string está descrito en el atributo midlet-permission del archivo permiso) jad.
Preguntas argumentativas
“La estructura de un MIDlet tiene 3 bloques funcionales y
necesarios”. Argumente esta afirmación. (2 puntos).
Los bloques funcionales son el estado ACTIVO que es cuando el midlet
inicia su ejecución pero antes d esto debe de estar PAUSADO o DETENIDO que es el otro bloque para poder iniciar todas sus clases, está el estado DESTRUIDO que es cuando se finaliza la ejecución y libera memoria RAM del móvil.
2 Programación de dispositivos móviles
Actividad 3 “El ciclo de vida de un MIDlet tiene 5 fases interconectadas de manera cíclica” ¿Cuál es ese ciclo? Explíquelo con sus palabras. (2 puntos).
Localización o Descubrimiento: En esta parte el AMD debe reconoce
(localizar) la dirección donde se alojan los midlets y nos provee una especie de visualización donde podemos elegir los midlets o las diversas aplicaciones que queremos que se instalen en nuestro dispositivo, también gestiona la descarga del mismo y/o provee conectividad mediante cualquier otro tipo de transferencia de archivos.
Instalación: Una vez que el midlet es descargado se procede a la fase
de instalación, aquí el AMD debe informar al usuario de cualquier error que pueda surgir.
Ejecución: En este proceso el AMD ejecuta y controla los estados del
midlet.
Actualización: Este es el proceso por el cual el AMD verifica si hay una
previa versión del midlet antes de su instalación, es decir, verifica si hay una versión menor.
Borrado: Este proceso se encarga de eliminar el midlet del dispositivo,
elimina o desinstala el midlet junto con sus respectivos archivos y componentes.
Preguntas propositivas
Como hemos visto, en esta unidad observamos la configuración de
un midlet típico. Haga un diagrama de flujo en el que indique la forma en la que funciona el midlet mostrado en el tema. Explique cada uno de los bloques del diagrama, y recuerde los elementos de un MIDlet general. (2 puntos).
3 Programación de dispositivos móviles
Actividad 3 Ejemplo de un MIDlets import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class HolaMundo extends MIDlet{ private Display pantalla; private Form formulario = null; public HolaMundo(){ pantalla = Display.getDisplay(this); formulario = new Form(“Hola Mundo”); } public void startApp(){ pantalla.setCurrent(formulario); } public void pauseApp(){ } public void destroyApp(boolean unconditional){ pantalla = null; formulario = null; notifyDestroyed(); } }