9.1 Canales de notificación, prioridades, insignias y resúmenes

9.1 Canales de notificación, prioridades, insignias y resúmenes

Desde Android O (API 26), las notificaciones deben asignarse a canales para que el usuario controle ajustes de forma granular. Además, es importante gestionar prioridades (o importancias), insignias (badges) y resúmenes para grupos de notificaciones.

1. Canales de notificación

  1. Crear e inicializar el canal al arrancar la aplicación:

    ltcodegt
    NotificationChannel channel = new NotificationChannel(
    chat_messages,
    Mensajes de chat,
    NotificationManager.IMPORTANCE_HIGH)
    channel.setDescription(Notificaciones de nuevos mensajes de chat)
    notificationManager.createNotificationChannel(channel)
    lt/codegt

  2. Configurar propiedades:
    • IMPORTANCE_NONE, MIN, LOW, DEFAULT, HIGH.
    • Sonido, vibración, luz LED, visibilidad en pantalla de bloqueo.
    • Badge: channel.setShowBadge(true).
  3. Asignar canal al crear la notificación:

    ltcodegt
    new NotificationCompat.Builder(context, chat_messages)
    .setContentTitle(Nueva foto)
    .setContentText(Juan te envió una imagen)
    .setSmallIcon(R.drawable.ic_message)
    .build()
    lt/codegt

Tabla: Niveles de importancia

IMPORTANCE_NONE 0 – Silencio total, no se muestra.
IMPORTANCE_MIN 1 – Aparece en panel, sin alerta visual ni sonora.
IMPORTANCE_LOW 2 – Sin sonido, con notificación en status bar.
IMPORTANCE_DEFAULT 3 – Sonido / icono en barra de estado.
IMPORTANCE_HIGH 4 – Heads-up, sonido, vibración.

2. Prioridades (Android lt O)

Antes de API 26, se usa setPriority():

  • PRIORITY_MIN, LOW, DEFAULT, HIGH, MAX.
  • Casi equivalentes a las importancias de canales.

3. Insignias (Badges)

  • Mostrar contador sobre el icono del launcher (Android O ):
    channel.setShowBadge(true) y builder.setNumber(count).
  • Launcher debe soportar Notification Badges.
  • En Android lt O, usar librerías de terceros o shortcuts dinámicos con ShortcutBadger.

4. Resúmenes de grupo

  1. Asignar clave de grupo en cada notificación:

    ltcodegt
    builder.setGroup(group_key_orders)
    lt/codegt

  2. Crear notificación resumen:

    ltcodegt
    Notification summary = new NotificationCompat.Builder(context, orders)
    .setContentTitle(3 nuevas órdenes)
    .setSmallIcon(R.drawable.ic_summary)
    .setGroup(group_key_orders)
    .setGroupSummary(true)
    .build()
    notificationManager.notify(SUMMARY_ID, summary)
    lt/codegt

  3. El sistema colapsa las notificaciones individuales bajo el resumen.

Profundizando sobre: 9.1 Canales de notificación, prioridades, insignias y resúmenes

  • Documentación oficial de Android Developers
    Visión general de notificaciones
    Canales de notificación
    Insignias
    Resumen y agrupación de notificaciones
  • Android Programming: The Big Nerd Ranch Guide (4.ª edición)
    Bill Phillips, Chris Stewart y Kristin Marsicano. Capítulos dedicados a la creación y gestión de notificaciones, incluyendo canales, prioridades e insignias.
  • Android Developer’s Cookbook
    Ian F. Darwin. Recetas prácticas para implementar notificaciones avanzadas, configuración de canales y resúmenes en distintos niveles de API.
  • Android Notification Channels Tutorial – raywenderlich.com
    https://www.raywenderlich.com/159416/android-notification-channels-tutorial
  • Curso gratuito de Udacity: Developing Android Apps
    Incluye unidad sobre notificaciones con ejercicios prácticos de canales, prioridades e insignias. https://www.udacity.com/course/developing-android-apps-with-kotlin–ud9012
  • Artículo de Antonio Leiva
    “Canales de notificación en Android O y posteriores” – análisis de casos reales y código de ejemplo. https://antonioleiva.com/android-notification-channels/
  • Vídeo tutorial de Coding in Flow
    “Android Notification Channels explained” – paso a paso para crear canales, asignar prioridades e iconos de insignia. https://www.youtube.com/watchv=1dtHBMSuQwU
  • Repositorio de ejemplo en GitHub
    Android samples de Google con implementaciones de Notification Channels y agrupación: https://github.com/android/notification-samples
  • Pluralsight: Android Notifications Demystified
    Curso centrado en notificaciones avanzadas, gestión de canales, badges y resúmenes. https://www.pluralsight.com/courses/android-notifications
  • Libro Android 9 Programming by Example
    John Horton. Proyecto práctico con capítulo dedicado a notificaciones adaptadas a Android Pie y superiores.

PreviusNext


¿Necesitas ayuda con este punto? Nuestra IA te puede ayudar

  • Hola 👋 , soy la IA de Synzen.org, puedes preguntarme siempre sobre la página donde estás leyendo, yo también la leo, así que puedo ayudarte a entenderlo, expandirlo, ponerte ejercicios…¡y mucho más!
Quiero saber más sobre… ...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *