Intent/Bundle
Intents
• ¿Que es un Intent?
• Es un objeto que contiene un mensaje destinado a otro componente de
aplicación
• El componente destinatario puede pertenecer a nuestra aplicación o no.
• ¿Qué es un componente de aplicación?
• Activities.
• Services.
• Content Providers.
• Broadcast Receivers.
Componente aplicación - Activities
• Es una pantalla individual con interfaz de usuario.
• Ejemplo App Correo: Activity para listar correos, Activity para crear
correos, Activity para leer correos.
• Cada activity es independiente de las otras. Puede asignarse permisos
a las mismas para ser accedidas desde otras aplicaciones.
• Ejemplo: Una App que use la cámara, puede querer iniciar la activity para
crear correos de la App de correo para mandar una foto adjunta.
Componente aplicación - Services
• No tiene interfaz de usuario.
• Realiza actividades en segundo plano.
• Ejemplo: Reproducir música mientras el usuario esta utilizando otras
aplicaciones.
Configuración > Aplicaciones > En ejecución
Componente aplicación - Content Providers
• Son ofrecidos por las aplicaciones o por el sistema para acceder a sus
datos (sistema de ficheros, Base de datos…).
• A través de estos Content Providers otras aplicaciones pueden
acceder o incluso modificar estos datos.
Ejemplo: El sistema Android tiene un Content Provider para los
Contactos (nombre, teléfono…). Una aplicación con los permisos
necesarios, puede acceder a esta información.
Componente aplicación – Broadcast Receiver
• Es un componente que se activa cuando se produce un anuncio por
parte del sistema u otras aplicaciones.
• Ejemplos de anuncios: La pantalla se ha apagado, la batería está
baja…
Intent Explicito
• Sabes exactamente que actividad quieres que se ejecute.
Iniciar actividad Contexto Clase de la Actividad
Guardando otras variables
Guardando otras variables
• Bundle: Estructura Map donde se pueden guardar y recuperar
distintos valores. Map = nombre -> valor.
• Este tipo de objeto es pasado a onSaveInstanceState y
onRestoreInstanceState como parámetro.
Metodos get/put Bundle
Key: valor con el que
recuperar los datos
guardados.
Se pueden guardar
varios datos con
distinta key.
Estructura Map.
Intent
Segunda Actividad
• Nuevo .xml
• Nuevo .java
onClick (MainActivity)
• Intent
• Constructor
• Bundle
• Comunicación entre actividades
• Iniciar segunda actividad