Reporte Intent ¿Qué es un intent?
Jesús BtaInforme17 de Noviembre de 2017
679 Palabras (3 Páginas)237 Visitas
Introducción
Cuando uno empieza a programar para Android se suele topar mas pronto que tarde con el concepto de Intent y de repende comienzan a surgir muchas dudas. Si miramos en el diccionario la traducción es “Intento” la cual no nos aporta una solución.
¿Qué es un intent?
Un intent sirve para invocar componentes, en android entendemos por componentes las activities, Que son componentes de UI [Interfaz gráfica], services, Código ejecutándose en segundo plano, broadcast receivers, Código que responde a un mensaje de transmisión [Broadcast messages] y proveedores de contenido, código que abstráe los datos.
Como mecanismo para invocar componentes, los intents son bastante fáciles de comprender. Básicamente nos permiten llamar a aplicaciones externas a la nuestra, lanzar eventos a los que otras aplicaciones puedan responder, lanzar alarmas etc.
Un intent está formado por una acción, datos (que se representan mediante URIs), datos extra en pares clave/valor y un nombre de clase explícito, llamado nombre del componente.
Es necesario aclarar algo, cuando un intent trae consigo un nombre de componente, se le llama intent explícito. Cuando no lo lleva y depende de la acción y los datos se llama intent implícito.
Desarrollo
Peprarando aplicaciones
Para poder comenzar a desarrollar la practica, era necesario editar la funcionalidad de la aplicación de ejemplo (una de nuestras practicas anteriores), para ilustrar la funcionalidad del uso de intents, en la practica esto se resume a utilizar un elemento button ya existente y con un OnClickListener activar el intent que no llevara (o abrira) a la actividad principal de la practica anterior (Reminders).
Como prueba inicial, el button se programo para abrir un intent implicito que abriera un link especifico en el explorardor de internet, esta prueba se realizo con éxito usando el siguiente codigo.
[pic 1]
Donde http://www.google.com representa una URL que se configuro arbitrariamente (a un link de una imagen), posteriormente despues de esta prueba, teniendo conocimiento de que los intents pueden ser activados desde un button por medio de un listener, se procedio a realizar una actividad relativamente mas compleja.
Los intents pueden llamar otras activities siempre y cuando tengamos claro cual es el nombre de la clase que contiene ese activity, en android, esto se resume a la clase que empaqueta nuestra aplicación, de este modo, asi como podemos llamar por medio de intent a otras actividades de nuestra aplicación, podemos hacer lo mismo con activities de otras aplicaciones.
Realización de Intent a otra aplicación
Android ya cuenta con varias “plantillas” de intents para acceder a diversas aplicaciones comunes en “todos” los telefonos, como el registro de llamadas, el explorardor de internet, la bandeja de mensajes, etc., en el caso de aplicaciones de terceros, como se menciono anteriormente se necesita saber exactamente el nombre de la clase que contiene la actividad, si esto no sucede asi la aplicación que ejecute el intent no respondera y se cerrara.
[pic 2]
Para realizar nuestra practica comprobamos la clase y el nombre de la actividad que procederemos a abrir, el nombre de la actividad esta especificado en el AndroidManifest donde se especifican las activitis con la etiqueta
...