Historial de notificaciones

El historial de notificaciones es una pantalla del dispositivo en la que los usuarios pueden ver las notificaciones pospuestas, algunas de las notificaciones rechazadas recientemente y un historial del último día de notificaciones. Es una función opcional que deben implementar los OEM. No hay ningún impacto en los SoC ni en las empresas de telecomunicaciones.

El objetivo del historial de notificaciones es abordar los siguientes casos de uso:

  • Desactivación accidental: Desactivaste una notificación por accidente y quieres ver rápidamente de qué se trataba.
  • Notificaciones pospuestas: Pospusiste una notificación, pero quieres verla antes de que finalice el período de posponer.
  • Solución de problemas: Crees que te perdiste una notificación. Revisas el historial de notificaciones para ver si hubo una notificación y si sonó. Si no la encuentras, verifica si se bloqueó una notificación. Puedes cambiar la configuración de notificaciones en el historial de notificaciones.
  • Administración de notificaciones: Deseas cambiar cuán disruptivas son las notificaciones, por lo que debes usar el historial de notificaciones porque ofrece una porción realista de la carga diaria de notificaciones, lo que facilita comprender el alcance de los cambios en las alertas, el bloqueo, etcétera.

Hay disponibles implementaciones de referencia de estos componentes del historial de notificaciones:

  • Configuración: packages/apps/Settings/src/com/android/settings/notification/history
  • Servidor del sistema: com.android.server.notification.NotificationHistory.*.java

Estos son los pasos principales para implementar el Historial de notificaciones:

  • Escribe eventos de notificación en el registro.
  • Agrega puntos de entrada al registro y la configuración para activarlo y desactivarlo.
  • Implementa la pantalla del historial de notificaciones.

Los usuarios pueden desactivar el historial de notificaciones. Cuando está desactivado, se borran todos los elementos del historial y no se escribe ningún elemento en el registro.

Puedes establecer la cantidad de días que las notificaciones aparecen en el historial de notificaciones con la constante HISTORY_RETENTION_DAYS en la clase NotificationHistoryDatabase. También puedes modificar qué secciones aparecen en la pantalla Historial de notificaciones y cómo se presentan los datos.

El período de retención predeterminado del historial de notificaciones es de 24 horas.

Estas pruebas de unidades se proporcionan para cada componente del código:

  • Pruebas de unidades del servidor del sistema: FrameworksUiServicesTests
  • Pruebas de unidades de configuración: make -j64 RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.notification"