Inicio Android Componentes de una aplicación Android

Componentes de una aplicación Android

por sgoliver

Actualizado: Abril 2020

En el artículo anterior del curso vimos la estructura de un proyecto Android y aprendimos dónde colocar cada uno de los elementos que componen una aplicación, tanto elementos de software como recursos gráficos o de datos. En éste nuevo artículo vamos a centrarnos específicamente en los primeros, es decir, veremos los distintos tipos de componentes de software con los que podremos construir una aplicación Android.

En Java o .NET estamos acostumbrados a manejar conceptos como ventana, control, eventos o servicios como los elementos básicos en la construcción de una aplicación.

Pues bien, en Android vamos a disponer de esos mismos elementos básicos aunque con un pequeño cambio en la terminología y el enfoque. Repasemos brevemente, a modo de glosario, los componentes principales que pueden formar parte de una aplicación Android o tener relevancia en su funcionamiento. Por claridad, y para evitar confusiones al consultar documentación en inglés, intentaré traducir lo menos posible los nombres originales de los componentes.

Activity

Las actividades (activity) representan el componente principal de la interfaz gráfica de una aplicación Android. Se puede pensar en una actividad como el elemento análogo a una ventana o pantalla en cualquier otro lenguaje visual.

View

Las vistas (view) son los componentes básicos con los que se construye la interfaz gráfica de la aplicación, análogo por ejemplo a los controles de Java o .NET. De inicio, Android pone a nuestra disposición una gran cantidad de controles básicos, como cuadros de texto, botones, listas desplegables o imágenes, aunque también existe la posibilidad de extender la funcionalidad de estos controles básicos o crear nuestros propios controles personalizados.

Fragment

Los fragmentos (fragment) se pueden entender como secciones o partes (habitualmente reutilizables) de la interfaz de usuario de una aplicación. De esta forma, una actividad podría contener varios fragmentos para formar la interfaz completa de la aplicación, y adicionalmente estos fragmentos se podrían reutilizar en distintas actividades o partes de la aplicación. No es obligatorio utilizar fragmentos en una aplicación, pero sí nos serán de mucha ayuda en ciertas ocasiones, por ejemplo para adaptar la interfaz de nuestra aplicación a distintos dispositivos, tamaños de pantalla, orientación, etc.

Service

Los servicios (service) son componentes sin interfaz gráfica que se ejecutan en segundo plano. Conceptualmente, son similares a los servicios presentes en cualquier otro sistema operativo. Los servicios pueden realizar cualquier tipo de acción, por ejemplo actualizar datos, lanzar notificaciones, o incluso mostrar elementos visuales (p.ej. actividades) si se necesita en algún momento la interacción con del usuario.

Content Provider

Un proveedor de contenidos (content provider) es el mecanismo que se ha definido en Android para compartir datos entre aplicaciones. Mediante estos componentes es posible compartir determinados datos de nuestra aplicación sin mostrar detalles sobre su almacenamiento interno, su estructura, o su implementación. De la misma forma, nuestra aplicación podrá acceder a los datos de otra a través de los content provider que ésta última haya definido.

Broadcast Receiver

Un broadcast receiver es un componente destinado a detectar y reaccionar ante determinados mensajes o eventos globales generados por el sistema  (por ejemplo: “Batería baja”, “SMS recibido”, “Tarjeta SD insertada”, …) o por otras aplicaciones (cualquier aplicación puede generar mensajes (intents, en terminología Android) de tipo broadcast, es decir, no dirigidos a una aplicación concreta sino a cualquiera que quiera escucharlo).

Widget

Los widgets son elementos visuales, normalmente interactivos, que pueden mostrarse en la pantalla principal (home screen) del dispositivo Android y recibir actualizaciones periódicas. Permiten mostrar información de la aplicación al usuario directamente sobre la pantalla principal.

Intent

Un intent es el elemento básico de comunicación entre los distintos componentes Android que hemos descrito anteriormente. Se pueden entender como los mensajes o peticiones que son enviados entre los distintos componentes de una aplicación o entre distintas aplicaciones. Mediante un intent se puede mostrar una actividad desde cualquier otra, iniciar un servicio, enviar un mensaje broadcast, iniciar otra aplicación, etc.

En el siguiente artículo empezaremos ya a ver algo de código, analizando al detalle una aplicación sencilla.

También te puede interesar

26 comentarios

Estructura de un proyecto Android | sgoliver.net blog 12/08/2010 - 10:34

[…] el siguiente post veremos los componentes software principales con los que podemos construir una aplicación […]

Responder
Desarrollo en Android | sgoliver.net blog 12/08/2010 - 13:27

[…] Componentes de una aplicación Android […]

Responder
Desarrollando una aplicación Android sencilla | sgoliver.net blog 17/08/2010 - 9:37

[…] entorno de desarrollo para Android y comentar la estructura básica de un proyecto y los diferentes componentes software que podemos utilizar ya es hora de empezar a escribir algo de código. Y como siempre lo mejor es […]

Responder
Anónimo 04/10/2011 - 10:57

Tengo una duda, cuado hablas de Services, quote: «… si se necesita en algún momento la interacción con del usuario» supongo que quieres decir que realiza las acciones SIN necesitar la interacción del usuario cierto?

El tutorial está excelente, las cosas fundamentales y explicado de forma breve y muy clara, muchas gracias!!

Responder
sgoliver 04/10/2011 - 14:59

Tal como indicas los servicios suelen ser procesos en segundo plano que no necesitan la intervención del usuario, pero sin embargo la frase del artículo es correcta, lo que quiero decir con ella es que si por determinadas circunstancias un servicio precisa de información por parte del usuario también es capaz de mostrar pantallas de información, formularios de datos, etc. Saludos.

Responder
@friso 13/11/2011 - 9:41

esta superr essto0 tiene time q quiero empessar en androidd me parece muy interesante

Responder
yonaides 20/12/2011 - 2:02

excelente tutorial y lo estoy leyendo capitulo por capitulo!!

Responder
4ntonio 31/12/2011 - 5:51

Terminado el 2011 con este excelente tuto…

Responder
Pepe 03/01/2012 - 15:49

Hola buenas.
Enhorabuena por el manual.

Una pregunta

¿Los broadcast receiver serian como los ActionListeners ?

SAludos

Responder
Luis 20/02/2012 - 13:16

Una obra de arte, magnifico. Puedo hacer una donación, para recibir el manual en PDF, por algún medio distinto a Pay Pal. (tengo problemas con ellos…)

Responder
Luis 20/02/2012 - 13:17

El comentario mío anterior era una pregunta….

Responder
djhonr 01/03/2012 - 23:26

Men muy buenos tutoriales un gran aporte para las personas que quieren aprender accerca de nuevos temas

Responder
Jorge Antonio 02/04/2013 - 0:35

Dedicarle tirmpo a algo voluntariamente para compartirlo es lo mejor que puedes hacer gracias por los tutos son de gran ayuda para los que no tenemos acceso a los cursos caros que surgen de este tema. gracias y suerte…

Responder
Isrot 23/05/2013 - 3:31

Muchas Gracias por el tiempo y la dedicacion que tomas para realizar este tuto.. Thx!!

Responder
Ruben Rodriguez 14/02/2014 - 2:40

He iniciado la lectura del primer capitulo y me parece entendible, deseando que no baje el sitio, pues de apoco seguiré leyendo los demás que me da la pauta de un interesante libro. Muchas Gracias!

Responder
Roberto 23/02/2014 - 22:23

Esta guía no se paga con dinero. No quiero ni pensar el esfuerzo que hay detrás. De verdad ¡olé tus santos cojones!

Responder
Carlos 17/03/2014 - 15:37

Quería sumarme al conjunto de felicitaciones por el curso.
Es muy completo, y creo que están muy equilibradas las explicaciones con los ejemplos. Los ejemplos muy bien montados.
En una mañana me han quedado claros más concetos de android, de sus componentes y como se utilizan que en en muchas horas de lectura por muchos blogs y sitos.
Un trabajazo!

Responder
alonso 03/05/2015 - 1:21

que nombre recibe un programa que se ejecuta en un ambiente android?

Responder
Joaquín Bresan 11/05/2015 - 22:37

Gran aporte amigo, muchas gracias por compartir.

Responder
Estructura de un proyecto Android (Android Studio) | sgoliver.net blog 16/08/2015 - 12:10

[…] ya que lo utilizaremos en breve como base para crear nuestra primera aplicación. Pero antes, en el siguiente apartado hablaremos de los componentes software principales con los que podemos construir una aplicación […]

Responder
Entorno de desarrollo Android (Android Studio) | sgoliver.net blog 22/08/2015 - 10:37

[…] aplicaciones Android. En próximos apartados veremos como crear un nuevo proyecto, la estructura y componentes de un proyecto Android, y crearemos y probaremos sobre el emulador una aplicación sencilla para […]

Responder
Desarrollando una aplicación Android sencilla (Android Studio) | sgoliver.net blog 22/08/2015 - 19:35

[…] de desarrollo para Android y comentar la estructura básica de un proyecto y los diferentes componentes software que podemos utilizar ya es hora de empezar a escribir algo de código. Y como siempre lo mejor es […]

Responder
Ajvazquez 18/04/2018 - 2:23

Es magnifico toda esta serie de tutoriales que has presentado de forma gratuita, tengo entendido que android se usa el modelo MVC, soy programador web y estoy todo el dia programando en javascript, me gustaria saber si es recomendable usar el modelo MVVM que es el que uso yo en la web, personalmente pienso que es un modelo mas limpio separando la vista de su controlador y los servicios correspondientes, muchas gracias.

Responder
Controles básicos de Eclipse – Funcionando apps mòviles. 15/05/2018 - 22:46

[…] Componentes de una aplicación Android […]

Responder
Fermín 29/07/2020 - 14:59

Muchas gracias por este gran curso y que lo sigas actualizando, en estos días intente seguir uno en coursera pero esta bastante desactualizado y muchas cosas ya no aplican; tardas más investigando como se hace ahora y pierdes de vista lo que realmente quieres aprender.

Responder

Dejar un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. Aceptar Más Información

Política de Privacidad y Cookies