Guide complet sur les badges de notification : une fonctionnalité clé pour améliorer l'engagement des applications

Présentation de la valeur du badge

Les badges de notification sont une fonctionnalité essentielle pour améliorer l'engagement des utilisateurs dans les applications mobiles. En affichant le nombre de messages non lus directement sur l'icône de l'application, les badges augmentent efficacement les visites de retour et les taux d'ouverture des notifications.

EngageLab propose une solution de badge complète et multiplateforme pour aider les développeurs à offrir une expérience utilisateur optimale.


Présentation de la prise en charge des canaux

En raison de limitations au niveau du système chez différents fabricants de mobiles, seuls certains canaux push prennent en charge l'affichage des badges. L'état de prise en charge est le suivant :

Fabricant Prise en charge du badge / nombre de badge Notes de mise en œuvre Limites des badges
Google FCM Badge pris en charge S'affiche sous forme de point par défaut, selon le comportement du système Pas de limite explicite
Huawei / Honor Badge numérique pris en charge Le nombre de badges augmente avec les notifications entrantes Généralement limité à 99
Xiaomi Badge numérique pris en charge Suit la logique par défaut du système, chaque nouvelle notification incrémente de 1 Limite définie par le système, non documentée
OPPO Badge numérique bureau via canal fabricant pris en charge Activez le badge numérique bureau sur la plateforme ouverte OPPO ; configurez via badge_operation_type et badge_message_count. Sans autorisation, la requête peut réussir mais le badge peut ne pas s'appliquer. La limite d'affichage finale et la politique du bureau suivent OPPO.
VIVO Incrément auto via canal fabricant et réglage SDK pris en charge Le canal fabricant utilise add_badge ; les notifications locales et setNotificationBadge/resetNotificationBadge du SDK sont aussi prises en charge. Activez l'autorisation de badge vivo et le badge bureau. La limite d'affichage finale et le comportement dépendent de la version de l'OS et de la politique du bureau.
Meizu Badge numérique non pris en charge Point rouge uniquement
iOS Badge numérique pris en charge Le nombre de badges peut être géré via le payload push ou les API SDK Très élevé ; pas de limite documentée

Cas d'utilisation typiques

  • Applications sociales : synchronisation en temps réel du nombre de messages non lus
  • Applications e-commerce : rappel pour les commandes ou actions en attente
  • Applications d'actualités : affichage des articles non lus

Badges iOS : gestion précise des badges

Architecture technique

texte alternatif


Configuration du badge côté client

Définir le badge (avec rappel)

Pris en charge depuis la version : v5.2.0

image.png


Effacer le badge

Efface la valeur du badge stockée sur le serveur MTPush, équivalent à l'appel :

setBadge: 0
              
              setBadge: 0

            
Afficher ce bloc de code dans la fenêtre flottante

image.png


Configuration du badge côté serveur

Lors de l'envoi de notifications push, le champ badge doit être configuré dans le payload ios.

Champ Type Optionnel Description Remarques
badge Int ou String Optionnel Nombre de badge sur l'icône • Peut être défini comme N, +N ou -N, où N varie de [0, 99].
• Si la valeur est 10, le badge peut être interprété comme N, 10+N ou 10-N (les valeurs inférieures à 0 effacent le badge).
• Une valeur de 0 ou une chaîne vide efface le badge.
• Si omis, le nombre de badges reste inchangé.
• Les bibliothèques API officielles MTPush (SDK) définissent par défaut la valeur du badge à "+1".

Badges Huawei / Honor

Configuration côté client

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

            
Afficher ce bloc de code dans la fenêtre flottante

Configuration du portail

Important : L'Activity d'entrée de l'application doit être correctement configurée. Huawei et Honor utilisent la même logique de configuration.

image.png


Paramètres avancés côté serveur

Paramètre Description Valeur métier
badge_add_num Incrémenter le nombre de badges Idéal pour les apps de messagerie afin d'éviter l'incohérence des badges
badge_set_num Définir une valeur fixe de badge Adapté aux indicateurs d'état comme les tâches en attente
badge_class Spécifier l'Activity du launcher Garantit que le badge est correctement associé à l'application cible

Badges Xiaomi

Les appareils sous MIUI 6 et versions ultérieures prennent en charge les badges numériques. Le système MIUI gère automatiquement la logique d'affichage des badges :

📱 Réception de notification → badge +1 (aucune action requise du développeur) 🔄 Ouverture de l'application → badge effacé automatiquementMIUI 6+ pris en charge sur toutes les versions, couvrant la majorité des utilisateurs Xiaomi


Badges OPPO : configuration côté serveur fabricant

Configurez dans options.third_party_channel.oppo de la requête push :

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

            
Afficher ce bloc de code dans la fenêtre flottante
  • badge_operation_type=1 : incrémente le badge de 1 ; badge_message_count n'est pas requis.
  • badge_operation_type=0 : remplace le badge actuel par badge_message_count ; 0 efface le badge.
  • Avant l'envoi, activez la capacité de badge numérique bureau pour l'application sur la plateforme ouverte OPPO ; aucune intégration badge supplémentaire n'est requise côté application.

Badges vivo : canal fabricant et contrôle SDK

Incrément automatique du badge via le canal fabricant :

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

            
Afficher ce bloc de code dans la fenêtre flottante

Ce champ se trouve sous options.third_party_channel.vivo. Pour les notifications locales ou la synchronisation métier des non-lus, appelez MTPushPrivatesApi.setNotificationBadge pour définir la valeur et resetNotificationBadge pour l'effacer. L'effet réel dépend de l'autorisation de badge vivo, de la version de l'OS et de l'interrupteur de badge bureau de l'utilisateur. Sur OriginOS, +1 utilise l'API système add_badge, et +N (N > 1) est défini sur la valeur cible cumulée.

Recommandations de bonnes pratiques

Stratégie unifiée multiplateforme

  • Mise en œuvre par paliers : privilégier la prise en charge complète des badges numériques sur iOS, Huawei et Xiaomi
  • Compatibilité de secours : utiliser des indicateurs par point rouge pour OPPO, VIVO et autres plateformes non prises en charge
  • Expérience utilisateur cohérente : maintenir une logique de badge aussi cohérente que possible sur toutes les plateformes
Icon Solid Transparent White Qiyu
Contactez-nous