Creaci贸n App’s #03.03 Android – Elementos que componen una aplicaci贸n Android

Al desarrollar una aplicaci贸n Android se hace uso de una serie de elementos que pertenecen al 谩mbito particular de esta plataforma. Ninguna aplicaci贸n Java est谩ndar hace uso de ellos (a no ser que el programador intente emular Android, pero no de forma obligatoria).

Estos elementos est谩ndar tienen unas caracter铆sticas y uso muy espec铆ficos as铆 que vamos a pasar a comentarlos brevemente

Vista o View

Las vistas son los componentes que nos permiten definir la interfaz de usuario que ser谩 la parte encargada de la interacci贸n directa con el usuario de nuestra aplicaci贸n. Estas clases son el el bloque elemental que compone las interfaces de usuario.

Una vista ocupa una zona rectangular de la pantalla y es responsiva tanto para el dibujado como para el tratamiento de eventos.

Est谩n definidas en un fichero XML y su creaci贸n es parecida a la de una p谩gina web en HTML.

Layout

Un Layout define la estructura visual de una interfaz de usuario para una aplicaci贸n o para un widget. Hay dos formas de declarar un layout, la primera es declarar los elementos de dicha interfaz de usuario en XML, la segunda pasa por instanciar elementos de tipo Layout en tiempo de ejecuci贸n.

La ventaja que proporciona la declaraci贸n en XML de un layout es que posibilita la separaci贸n entre la parte gr谩fica de la aplicaci贸n de su implementaci贸n en c贸digo. Esto es especialmente 煤til cuando creamos distintas layouts para por ejemplo distintas orientaciones de la pantalla o distintos idiomas, tenemos diferentes componentes de la interfaz gr谩fica pero con la misma implementaci贸n, por lo que un cambio de alg煤n layout no afecta a su funcionamiento ni al de los dem谩s y al rev茅s igual, un cambio en la implementaci贸n para, por ejemplo, solventar un error har谩 que todas las layouts que compartan dicho c贸digo fuente funcionen correctamente ya que el error es solventado en todas.

Actividad o Activity

Una actividad es un elemento independiente, enfocado a una acci贸n que el usuario puede realizar. La mayor铆a de las actividades interact煤an con el usuario as铆 que las actividades ser谩n las encargadas de crear la ventana d贸nde se ubicar谩 la interfaz de usuario. La interfaz suele estar formada por varias actividades.

Servicio o Service

Un servicio es un proceso que se ejecuta en segundo plano, es decir de forma paralela e independiente a la acci贸n principal del usuario. Si se quiere hacer una comparaci贸n pueden ejemplificarse con los demonios de Unix/Linux, los servicios de Windows o las hebras de Java.

Existen dos tipos de servicios en Android, uno local, del que puede hacer uso el dispositivo y las aplicaciones del mismo y otro remoto que amplia su 谩mbito hacia otros dispositivos.

Intenci贸n o Intent

Un intent es una declaraci贸n abstracta del deseo de realizar una operaci贸n determinada. Estas operaciones pueden ser muy diversas, desde lanzar una actividad, lanzar un servicio, realizar un broadcast o realizar una comunicaci贸n con un servicio ya sea local o remoto.

Este deseo no es ni m谩s ni menos que una declaraci贸n formal de una acci贸n que se pretende realizar. Un ejemplo cl谩sico de Intent es el de realizar una llamada o el de acceder al navegador de internet.

Este mecanismo facilita procesos como realizar procesos entre actividades o servir de enlace o 鈥減egamento鈥 entre distintas actividades si se colocan en medio de 茅stas. Es una estructura pasiva que alberga una descripci贸n abstracta de la acci贸n que pretende realizar. Proveedores de contenido o Content Provider Los proveedores de contenido realizan la tarea vital de facilitar el intercambio y acceso a la informaci贸n de forma segura. El Content Provider es el elemento que nos permite acceder a los datos del tel茅fono y de otras aplicaciones. Un ejemplo t铆pico de su uso es en las aplicaciones de mensajer铆a cuando acceden a la lista de contactos del tel茅fono o al historial de llamadas.