Ciclo de vida del servicio. El diagrama de la izquierda permite ver el ciclo de vida cuando el servicio se crea con startService() y el diagrama de la derecha permite ver el ciclo de vida cuando el servicio se crea con bindService().
Tipos de servicios:
Primer plano
Un servicio en primer plano realiza una operación que el usuario puede notar. Por ejemplo, una aplicación de audio usa un servicio en primer plano para reproducir una pista de audio. Los servicios en primer plano deben mostrar una notificación. Estos servicios continúan ejecutándose incluso si el usuario deja de interactuar con la aplicación.
Segundo plano
Un servicio en segundo plano realiza una operación que el usuario no nota directamente. Por ejemplo, si una aplicación usa un servicio para comprimir su almacenamiento, suele tratarse de un servicio en segundo plano.
Enlace
Un servicio es de enlace cuando un componente de la aplicación se vincula a él llamando a bindService(). Un servicio de enlace ofrece una interfaz cliente-servidor que permite que los componentes interactúen con el servicio, envíen solicitudes, reciban resultados e incluso lo hagan en distintos procesos con la comunicación entre procesos (IPC). Un servicio de enlace se ejecuta solamente mientras otro componente de aplicación está enlazado a él. Se pueden enlazar varios componentes con el servicio a la vez, pero el servicio se destruye cuando todos ellos se desenlazan.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.