Estoy escribiendo código para mostrar notificaciones al usuario en momentos específicos (al igual que la aplicación Google Calendar).Mostrar la notificación de barra de estado desde un BroadcastReceiver
que, por tanto, crear:
- un
BroadcastReceiver
que escucha aBOOT_COMPLETED
, tras la recepción se configura una alarma en un minuto con el fin de no sobrecargar el dispositivo cuando todavía se está cargando cosas; - un
BroadcastReceiver
que escucha las alarmas: el primer conjunto un minuto después deBOOT_COMPLETED
, y el siguiente en la próxima cita (como en Google Calendar)
Así que, por lo general:
BOOT_COMPLETED
=> iniciar alarma con un retraso de un minuto- Un minuto después => el receptor configura otra alarma para la siguiente cita
- Varios minutos/horas/días después, la alarma se activa it off => el receptor muestra una notificación de la barra de estado
Lo que significa que las notificaciones de la barra de estado se ponen en marcha desde el BroadcastReceiver
.
He leído en el documento que deben ser lanzados desde actividades o servicios: https://developer.android.com/guide/topics/ui/notifiers/notifications.html#Basics
que estoy pidiendo aquí las mejores prácticas. ¿Debo crear un Service
que será lanzado por el BroadcastReceiver
, y cuyo único propósito será iniciar la notificación de la barra de estado? Mi código está funcionando, solo quiero crear código limpio como lo sugiere Google.
buena pregunta, esto me está haciendo considerar el rediseño de mi configuración actual que utiliza el esquema 'Alarm'->' BroadcastReceiver'-> 'Notification' que describió: - \ –