COMPONENTES DE UNA APLICACIÓN ANDROID
Activities
componente principal de la interfaz gráfica de una aplicación en Android. A
cada Activity se le asigna una ventana en la cual se dibuja la interfaz de usuario, con la
que el usuario podrá interaccionar para realizar las diversas acciones que hayamos
contemplado en la aplicación.
Para construir la interfaz gráfica,
tenemos los componentes
denominados Views (vistas)
con lo que dispondremos de numerosos controles básicos, como
por ejemplo, botones, listas desplegables o cuadros de texto, pudiendo extender la
funcionalidad de estos controles o crear otros personalizados.
Por lo general, una aplicación está formada por diferentes Activities, que están más o
menos ligadas entre sí.
Cuando se suceden varias, éstas se van almacenando en una
pila mediante el mecanismo de LIFO (Last In – First Out: la última que entra en la pila es
la primera que sale) y cuando el usuario pulsa el botón atrás, se extrae la Activity actual de
la pila y se reanuda la anterior Activity situada allí.
. Para ser iniciados podemos usar dos métodos:
Método Context.startActivity()
Método Context.startActivityForResult(), cuando queramos que se devuelva algún
resultado.
Services
Son componentes sin interfaz gráfica que se ejecutan en segundo
plano:
Son llamados a través de otro componente, como puede ser una Activity, y seguirán
ejecutándose en segundo plano, aunque la Activity haya finalizado o, incluso, aunque
hayamos salido de la aplicación.
Cada servicio que creemos lo tenemos que declarar en el AndroidManifest.xml mediante
la etiqueta <service>
Para ser iniciados podemos usar dos métodos:
Método Context.startService()
Método Context.bindService()
Intents
es el elemento básico de comunicación entre los componentes
mediante un Intent se podrá llamar a una Activity, iniciar un servicio,
enviar un mensaje broadcast, iniciar otra aplicación, etc.
Su uso más importante
es para iniciar Activities, por lo que puede considerarse como la
unión entre Activities.
Los objetos Intent están formados por un paquete de información.
Contienen información
de interés para el componente que la recibe, como la acción que será ejecutada y los datos
necesarios, más la información de interés para el sistema Android, como la categoría del
componente que manejará el Intent y las instrucciones de cómo lanzar la Activity.
Nombre de componente
Acción:
Content Provider
Un Content Provider es un componente destinado a compartir datos entre aplicaciones.
pueden ser almacenados en el sistema de archivos
o en cualquier otro lugar que sea accesible desde nuestra aplicación.
y Broadcast Receivers
Un Broadcast Receiver es un componente que detecta y reacciona frente a mensajes
globales del sistema
Al igual que los servicios y Activities, los Broadcast Receiver también los tenemos que
registrar, pero esta vez tenemos dos formas de hacerlo:
Método Context.registerReceiver()
Declarándolos en el AndroidManifest.xml con la etiqueta <receiver>
Para iniciar un Broadcast Receiver podemos usar dos alternativas:
Método Context.sendBroadcast(),
si queremos iniciar un broadcast ‘desordenado’ (sin
esperar nada a cambio, sería un modo de comunicación hacia un lado)
Método Context.sendOrderedBroadcast(),
si queremos que por el contrario sea
‘ordenado’ (lo que significa que los receptores de este broadcast pueden devolver
información como respuesta a ello)