Existe una serie de elementos clave que resultan imprescindibles para desarrollar aplicaciones en Android. En este post realizo una breve descripción de algunos de los más importantes.

Vista (View)

Las vistas son los elementos que componen la interfaz de usuario de una aplicación: por ejemplo, un botón o una entrada de texto. Todas las vistas va a ser objetos descendientes de la clase View, y por tanto, pueden ser definidas utilizando código Java. Sin embargo, lo habitual será definirlas utilizando un fichero XML y dejar que el sistema cree los objetos de forma automática a partir de ese fichero.

Esta forma de trabajar es muy similar a la definición de una página web utilizando código HTML.

Layout

Un layout es un conjunto de vistas agrupadas de una determinada forma. Vamos a disponer de diferentes tipos de layouts para organizar las vistas de forma lineal, en cuadricula o indicando posiciones absolutas en cada vista. Los layouts también son objetos descendientes de la clase View. Igual que las vistas, los layouts pueden ser definidos en código, aunque la forma habitual de definirlos es utilizando código XML.

Actividad (Activity)

Una aplicación en Android va a estar formada por un conjunto de elementos básicos de visualización, conocidos como pantallas. En Android cada uno de estos elementos (pantallas) se conoce como actividad. Su función principal es la creación de la interfaz de usuario. Una aplicación suele necesitar varias actividades para crear la interfaz de usuario. Las diferentes actividades creadas serán independientes entre si, aunque todas trabajarán para un objetivo común. Toda actividad ha de pertenecer a una clase descendiente de Activity.

Servicio (Service)

Un servicio es un proceso que se ejecuta de forma autónoma (por decirlo de forma sencilla, el servicio es ejecutado por detrás de la aplicación), sin la necesidad de una interacción con el usuario. Es muy parecido a un demonio de Linux o un servicio de Windows.

En Android disponemos de dos tipos de servicios:

  1. Servicios locales: que son ejecutados en el mismo proceso.
  2. Servicios remotos: que son ejecutados en procesos separados.

Los servicios es un tema extenso que haré otro post especifico para ellos.

Intención (Intent)

Una intención representa la voluntad de realizar alguna acción, como realizar una llamada de teléfono o visualizar una página web. Se utiliza cada vez que queramos:

  • Lanzar una actividad.
  • Lanzar un servicio.
  • Enviar un anuncio broadcast.
  • Comunicarnos con un servicio.

Los componentes lanzados pueden ser internos o externos a nuestra aplicación. También utilizaremos las intenciones para el intercambio de información entre estos componentes.

Fragment

La llegada de las Tablets trajo el problema de que las aplicaciones de Android deben soportar pantallas más grandes. Si diseñamos una aplicación pensada para un dispositivo móvil y luego la ejecutamos en una tablet, el resultado no suele ser satisfactorio.

Para ayudar al desarrollador a resolver este problema aparecen los fragments. Un fragment  está formado por la unión de varias vistas para crear un bloque funcional de la interfaz de usuario. Una vez creados los fragments, podemos combinar uno o varios dentro de una actividad, según el tamaño de pantalla disponible.

Su uso puede ser algo complejo.

Receptor de anuncios (Broadcast Receiver)

Un receptor de anuncios los recibe y reacciona ante ellos. Estos pueden ser originados por el sistema (por ejemplo: Batería baja, Llamada entrante, etc.) o por las aplicaciones.

Las aplicaciones también pueden crear y lanzar nuevos tipos de anuncios. Los receptores no disponen de interfaz de usuario, aunque pueden iniciar una actividad si es necesario.

Proveedores de contenido (Content Provider)

En muchas ocasiones, las aplicaciones instaladas en un terminal necesitan compartir información. Android define un mecanismo estándar para que las aplicaciones puedan compartir datos sin necesidad de comprometer la seguridad del sistema de ficheros. Con este mecanismo podremos acceder a datos de otras aplicaciones, como la lista de contactos, o proporcionar datos a otras aplicaciones.

Anuncios

Write your comment