Antes de ponerse a programar a lo loco en Android, conviene ponerse un poco al día en cuanto a teoría de la plataforma en si. Así es que en este post, voy a explicar (nada que no esté en la documentación propia de Android), cuales son los componentes básicos de cualquier aplicación Android.

Existen 4 tipos de bloques de construcción de cualquier aplicación Android:
- Activity
- Intent Receiver
- Service
- Content Provider
No necesáriamente necesitaremos cada uno de ellos en nuestra aplicación, pero si una combinación de algunos.
A modo resumen:
ACTIVITY
Es el componente mas genérico y más común de la plataforma. Una Activity es generalmente una pantalla en tu aplicación. Para hacer uso de ella, necesitamos que nuestra clase herede de la superclase Activity. Nuestra clase podrá mostrar una interfície de usuario compuesta por Vistas (Views) y podrá reaccionar a los eventos del usuario (clickar un botón, escribir en un campo de texto etc). Así pues, cada pantalla en Android está implementada como Activity. La navegación entre pantallas se lleva a cabo mediante el arranque de una nueva Activity (generalmente mediante el método startActivity(myintent), y existe un vínculo de comunicación entre pantallas de modo que la pantalla generada puede devolver valores a la pantalla que la creó para de esta forma mantener el buen funcionamiento de la aplicación.
La navegación entre pantallas se lleva a cabo mediante una clase especial llamada Intent. Un Intent describe qué desea hacer la aplicación en ese momento (una mala traducción seria: una intención de hacer algo).
La estructura típica de un Intent es: la acción que desea realizar (la intención) y los datos sobre los que actúa. Existe una clase relacionada llamada IntentFilter; se diferencia de Intent en que mientras que Intent es una petición de realizar una acción, IntentFilter es una descripción de aquello que demanda la aplicación.
INTENT RECEIVER
IntentReceiver es usado para ejecutar código en reacción a un evento externo (como veis va ligado a Intent), como por ejemplo, cuando el teléfono suena, cuando son las 16:00h etc.
Este tipo de componentes tiene que estar registrado en el fichero AndroidManifest.xml o como alternativa mediante código haciendo uso del método Context.registerReceiver().
SERVICE
Comunmente conocido, como tal, un servicio es código que se ejecuta en segundo plano (in background) y no necesita de una interficie de usuario en su ciclo de vida. Conviene informarse de las prioridades que gestiona el sistema en cuanto al tiempo de vida de los componentes y la influencia del servicio en esta jerarquía de prioridades: Ciclo-de-vida
CONTENT PROVIDER
Este componente es usado para compartir datos entre diferentes aplicaciones (Persistencia).
Teneis más información en el documento original de Google.
Últimos comentarios