Android: ¿Qué es Sticky Broadcast?

Las aplicaciones de Android se ejecutan en dispositivos de usuario con el sistema operativo Android instalado, incluidos dispositivos móviles como teléfonos inteligentes, tabletas y computadoras portátiles. Muchas empresas están apuntando al sistema Android con aplicaciones para minoristas y otros servicios comerciales. Dependiendo del propósito de una aplicación, la recepción de transmisiones del sistema puede ser una tarea esencial para el programador. Las transmisiones fijas son una categoría particular de transmisiones del sistema Android y se pueden utilizar dentro de cualquier aplicación. Las transmisiones suelen ser particularmente relevantes para las aplicaciones que involucran servicios de Android.

Transmisiones

El sistema Android utiliza transmisiones para transmitir información a las aplicaciones. Algunas transmisiones son enviadas por aplicaciones de Android, pero muchas de las transmisiones más utilizadas son enviadas por el propio sistema. Las transmisiones comunes indican información general sobre el sistema que es potencialmente relevante para muchas de las aplicaciones que pueden estar ejecutándose en él. Por ejemplo, una transmisión puede indicar que el nivel de la batería es bajo o que la pantalla del usuario se agotó y se apagó. Al recibir estas transmisiones, las aplicaciones pueden responder a ellas y, si es necesario, realizar tareas para mantener el funcionamiento normal.

Difusiones pegajosas

Una transmisión fija es una transmisión que se mantiene después del momento en que se anuncia al sistema. La mayoría de las transmisiones se envían, procesan dentro del sistema y rápidamente se vuelven inaccesibles. Sin embargo, Sticky Broadcasts anuncia información que permanece accesible más allá del punto en el que se procesa. Un ejemplo típico es el nivel de batería Broadcast. A diferencia de la mayoría de las transmisiones, el nivel de la batería se puede recuperar dentro de las aplicaciones más allá del punto en el que se envió a través del sistema. Esto significa que las aplicaciones pueden averiguar cuál fue la última transmisión de nivel de batería.

receptores

Las aplicaciones de Android utilizan receptores de transmisión para detectar y procesar la información dentro de las transmisiones del sistema. Los desarrolladores que trabajan en aplicaciones de Android crean clases de Java que amplían la clase de receptor de transmisión principal mediante la herencia de Java. Esto permite a los programadores implementar métodos en los que pueden acceder a la información de difusión, adaptando el comportamiento de una aplicación al estado del sistema o al estado de otros procesos dentro de la propia aplicación.

Utiliza materiales de

Muchas aplicaciones de Android reciben Sticky y otras transmisiones, que a menudo se utilizan junto con los servicios de Android. Un Servicio es un proceso que se lleva a cabo en segundo plano, a veces llevando a cabo etapas de procesamiento particulares a intervalos cronometrados. Cuando se inicia un servicio, es posible que deba verificar el estado del sistema mediante una transmisión fija. Por ejemplo, una aplicación que muestra el nivel de batería del dispositivo a intervalos específicos puede verificar el nivel de batería de la última transmisión usando Sticky Broadcast, actualizando su pantalla para el usuario.

Requisitos

Las aplicaciones de Android que utilizan Sticky Broadcasts deben cumplir ciertos requisitos. Al extender la clase de receptor de transmisión, las aplicaciones pueden recibir transmisiones enviadas por el sistema y, opcionalmente, pueden enviar transmisiones desde otras clases. Llamar al método "sendStickyBroadcast" dentro de una aplicación provocará un mensaje Sticky Broadcast que permanecerá dentro del sistema para que lo reciban otras clases. Las aplicaciones que utilizan el método deben incluir ciertos permisos dentro de sus archivos de manifiesto, incluido el permiso "BROADCAST_STICKY"; de lo contrario, se lanza una excepción cuando se ejecuta la aplicación.