Guía completa sobre las insignias de notificación: una función clave para mejorar la interacción con la app

Visión general del valor de las insignias

Las insignias de notificación son una función fundamental para mejorar la interacción de los usuarios en aplicaciones móviles. Al mostrar el número de mensajes no leídos directamente en el icono de la app, las insignias aumentan de forma eficaz las visitas recurrentes y las tasas de apertura de notificaciones.

EngageLab proporciona una solución integral y multiplataforma de insignias para ayudar a los desarrolladores a ofrecer una experiencia de usuario óptima.


Visión general de compatibilidad por canal

Debido a limitaciones a nivel de sistema entre distintos fabricantes móviles, solo algunos canales de push admiten la visualización de insignias. El estado de compatibilidad es el siguiente:

Fabricante Compatibilidad con insignias / insignias numéricas Notas de implementación Limitaciones de insignia
Google FCM Insignia compatible Se muestra como un punto de forma predeterminada, siguiendo el comportamiento del sistema Sin límite superior explícito
Huawei / Honor Insignia numérica compatible El número de la insignia aumenta con las notificaciones entrantes Normalmente limitado a 99
Xiaomi Insignia numérica compatible Sigue la lógica predeterminada del sistema; cada nueva notificación incrementa en 1 Límite definido por el sistema; no está documentado explícitamente
OPPO Compatible con insignia numérica de escritorio por canal del fabricante Habilite la insignia numérica de escritorio en la plataforma abierta de OPPO; configúrela con badge_operation_type y badge_message_count. Sin permiso, la solicitud puede tener éxito pero la insignia puede no aplicarse. El límite final de visualización y la política del escritorio siguen a OPPO.
VIVO Compatible con incremento automático por canal del fabricante y configuración de insignia por SDK El canal del fabricante usa add_badge; también se admiten notificaciones locales y setNotificationBadge/resetNotificationBadge del SDK. Active el permiso de insignia de vivo y encienda la insignia del escritorio. El límite final y el comportamiento dependen de la versión del SO y de la política del escritorio.
Meizu Insignia numérica no compatible Solo punto rojo
iOS Insignia numérica compatible El número de la insignia se puede gestionar mediante el payload de push o las API del SDK Muy alto; sin límite superior documentado

Casos de uso típicos

  • Apps sociales: sincronización en tiempo real de los recuentos de mensajes no leídos
  • Apps de comercio electrónico: recordatorio de pedidos o acciones pendientes
  • Apps de noticias: visualización de artículos no leídos

Insignias en iOS: gestión precisa de insignias

Arquitectura técnica

alt text


Configuración de insignias en el cliente

Configurar insignia (con callback)

Compatible a partir de la versión: v5.2.0

image.png


Borrar insignia

Se borra el valor de la insignia almacenado en el servidor de MTPush, equivalente a llamar a:

setBadge: 0
              
              setBadge: 0

            
Este bloque de código se muestra en una ventana flotante

image.png


Configuración de insignias en el servidor

Al enviar notificaciones push, se debe configurar el campo badge en el payload ios.

Campo Tipo Opcional Descripción Notas
badge Int o String Opcional Número de insignia del icono de la app • Se puede establecer como N, +N o -N, donde N está en el rango [0, 99].
• Si el valor es 10, la insignia puede interpretarse como N, 10+N o 10-N (los valores inferiores a 0 borrarán la insignia).
• Un valor 0 o una cadena vacía borra la insignia.
• Si se omite, el número de insignia permanece sin cambios.
• Las bibliotecas oficiales de la API de MTPush (SDK) establecen de forma predeterminada el valor de la insignia en "+1".

Insignias en Huawei / Honor

Configuración del lado del cliente

<!-- AndroidManifest.xml permission configuration --> <uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/> <uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>
              
              <!-- AndroidManifest.xml permission configuration -->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
<uses-permission android:name="com.hihonor.android.launcher.permission.CHANGE_BADGE"/>

            
Este bloque de código se muestra en una ventana flotante

Configuración en el portal

Importante: La Activity de entrada de la app debe configurarse correctamente. Huawei y Honor utilizan la misma lógica de configuración.

image.png


Parámetros avanzados del lado del servidor

Parámetro Descripción Valor empresarial
badge_add_num Incrementar el número de insignia Ideal para apps de mensajería para evitar incoherencias en la insignia
badge_set_num Establecer la insignia en un valor fijo Adecuado para indicadores basados en estado, como tareas pendientes
badge_class Especificar la Activity del launcher Garantiza que la insignia se asocie correctamente con la app de destino

Insignias en Xiaomi

Los dispositivos que ejecutan MIUI 6 y versiones posteriores admiten insignias numéricas. El sistema MIUI gestiona automáticamente la lógica de visualización de insignias:

  • Al recibir una notificación: insignia +1 (no se requiere ninguna acción del desarrollador).
  • Al abrir la app: la insignia se borra automáticamente.
  • MIUI 6+ es compatible en todas las versiones, cubriendo a la mayoría de los usuarios de Xiaomi.

Insignias OPPO: configuración en el servidor del fabricante

Configure en options.third_party_channel.oppo de la solicitud de push:

{ "badge_operation_type": 1 }
              
              {
  "badge_operation_type": 1
}

            
Este bloque de código se muestra en una ventana flotante
  • badge_operation_type=1: aumenta la insignia en 1; no se necesita badge_message_count.
  • badge_operation_type=0: sobrescribe la insignia actual con badge_message_count; el valor 0 la borra.
  • Antes de enviar, habilite la capacidad de insignia numérica de escritorio para la app en la plataforma abierta de OPPO; no se requiere integración adicional de insignias en el lado de la app.

Insignias vivo: canal del fabricante y control por SDK

Incremento automático de la insignia por el canal del fabricante:

{ "add_badge": true }
              
              {
  "add_badge": true
}

            
Este bloque de código se muestra en una ventana flotante

Este campo está en options.third_party_channel.vivo. Para notificaciones locales o sincronización de no leídos desde el negocio, llame a MTPushPrivatesApi.setNotificationBadge para establecer el valor y a resetNotificationBadge para borrarlo. El efecto real depende del permiso de insignia de vivo, la versión del SO y el interruptor de insignia del escritorio del usuario. En OriginOS, +1 usa la API del sistema add_badge, y +N (N > 1) se establece al valor objetivo acumulado.

Recomendaciones de mejores prácticas

Estrategia unificada multiplataforma

  • Implementación por niveles: priorizar la compatibilidad completa de insignias numéricas en iOS, Huawei y Xiaomi
  • Compatibilidad de respaldo: utilizar indicadores de punto rojo para OPPO, VIVO y otras plataformas no compatibles
  • Experiencia de usuario coherente: mantener la lógica de insignias lo más coherente posible entre plataformas
Icon Solid Transparent White Qiyu
Contacto