Índice

Servicio

Un servicio es un componente de aplicación independiente que no tiene interfaz gráfica y que se ejecuta en segundo plano. Como su propio nombre indica, este componente de aplicación representa un servicio en el sentido estricto del término, que está disponible para la aplicación que lo contiene o para otras aplicaciones.

Un servicio proporciona una interfaz que permite a los demás componentes de la aplicación comunicarse con él.

Para definir un servicio, es preciso crear una clase que herede de la clase Service e implementar el metodo abstracto onBind.

Como con la actividad, la ejecución de un servicio se realiza en el thread principal del proceso de la aplicación de la que forma parte.

Un servicio no se ejecuta en un proceso separado, ni en un thread concurrente del thread principal. Por tanto, no debe bloquear el thread principal durante más de diez segundos, igual que ocurre con las actividades. En caso de tener que realizar un procesamiento largo, el servicio puede crear un thread concurrente para ello (véase el capítulo Concurrencia, seguridad y red - Programación concurrente). O, para mayor comodidad, el servicio puede heredar de la clase IntentService, que facilita la gestión de procesamientos asíncronos.

Es posible utilizar un servicio de varias formas: directamente, estableciendo una conexión con él o bien combinando ambos modos.

1. Declaración

Para poder utilizarse, un servicio debe estar declarado en el sistema ...