Les infos en direct fournissent un résumé des mises à jour importantes pour que les utilisateurs puissent suivre la progression sans ouvrir l'application. Le système met en avant les notifications d'infos en direct, bien que les utilisateurs puissent les ignorer temporairement ou les rétrograder en notifications standards. Les notifications promues s'affichent de manière plus visible sur les surfaces système, y compris en haut du panneau des notifications et de l'écran de verrouillage, et sous forme de chips dans la barre d'état. Les notifications d'infos en direct doivent respecter les principes de notification pour fournir des informations brèves, opportunes et pertinentes.
Les fiches de notification mises en avant présentent les caractéristiques d'apparence suivantes :
- Développé par défaut
- Non réductible
Votre notification doit répondre aux exigences suivantes pour être qualifiée d'info en direct :
- Doit être "Standard Style",
BigTextStyle,CallStyle,ProgressStyleouMetricStyle. - Vous devez demander l'autorisation non liée à l'exécution suivante dans le fichier manifeste Android :
android.permission.POST_PROMOTED_NOTIFICATIONS. - Vous devez demander la promotion à l'aide de
EXTRA_REQUEST_PROMOTED_ONGOINGouNotificationCompat.Builder#setRequestPromotedOngoing. - Doit être
ongoing(définissezFLAG_ONGOING_EVENT). - Un
contentTitledoit être défini. - Ne doit PAS avoir de
customContentViewdéfini (pas deRemoteViews). - Ne doit PAS être le résumé d'un groupe utilisant
setGroupSummary. - Ne doit PAS
setColorizedàTRUE. - Le canal de notification ne doit PAS avoir
IMPORTANCE_MIN.
Caractéristiques de la promotion
Les API suivantes vous aident à déterminer si le système va promouvoir votre notification :
Notification.FLAG_PROMOTED_ONGOINGindique si la notification est promue.Notification.hasPromotableCharacteristics()vérifie si le système peut promouvoir la notification. Cette méthode ne tient pas compte du fait que l'utilisateur a désactivé ou non les infos en direct pour l'application dans les paramètres.NotificationManager.canPostPromotedNotifications()vérifie si votre application peut publier une notification promotionnelle, par exemple si l'utilisateur l'a activée ou désactivée dans les paramètres.Settings.ACTION_MANAGE_APP_PROMOTED_NOTIFICATIONSest l'action d'intent qui permet aux applications de rediriger les utilisateurs vers les paramètres pour activer cette fonctionnalité.
Critères d'utilisation
Utilisez les infos en direct pour les activités en cours, initiées par l'utilisateur et sensibles au facteur temps.
En cours
Une info en direct doit représenter une activité en cours, avec un début et une fin distincts. Si une activité s'est produite dans le passé, n'utilisez pas de mise à jour en direct. Utilisez plutôt une notification standard. Cela s'applique également aux événements qui n'ont pas encore commencé, bien que les événements sur le point de commencer puissent utiliser une mise à jour en direct.
Les infos en direct représentent les activités en cours. N'utilisez pas les infos en direct pour offrir un accès accéléré aux fonctionnalités de l'application. Pour ce faire, utilisez un widget d'application ou un bloc "Réglages rapides" personnalisé.
- Utilisations appropriées : navigation active, appels téléphoniques en cours, suivi actif d'un trajet en covoiturage et suivi actif d'une livraison de repas.
- Utilisations inappropriées : annonces, promotions, messages de chat, alertes, événements d'agenda à venir et accès rapide aux fonctionnalités de l'application.
Lancé par l'utilisateur
La plupart des infos en direct doivent représenter des activités explicitement déclenchées par l'utilisateur, comme démarrer un entraînement, lancer la navigation en voiture ou commander un trajet en covoiturage. N'affichez pas d'informations ambiantes, telles que celles concernant l'environnement, les centres d'intérêt ou les événements à venir de l'utilisateur, dans une mise à jour en direct. N'autorisez pas les activités déclenchées par d'autres parties à générer des infos en direct.
Parfois, un utilisateur peut effectuer une action qui lance une activité à un moment ultérieur. Par exemple, si l'utilisateur achète des billets pour un vol ou un concert, s'inscrit à un tournoi ou indique d'une autre manière sa participation future à un événement limité dans le temps. Dans ce cas, il peut être judicieux d'afficher automatiquement une info en direct lorsque l'événement programmé commence. Cependant, les applications doivent régler leurs déclencheurs pour qu'ils n'apparaissent que lorsque l'activité est imminente. Si l'utilisateur indique explicitement qu'il souhaite commencer à suivre un événement en arrière-plan, comme un match de sport, vous pouvez commencer à publier des infos en direct pour cet événement. Toutefois, vous devez également inclure une action Retirer dans la notification associée.
Urgent
N'affichez une mise à jour en direct que si elle nécessite l'attention de l'utilisateur tout au long de l'activité. L'un des principaux cas d'utilisation des infos en direct est la surveillance, lorsque l'utilisateur tire un avantage significatif de la consultation des infos en direct pour suivre l'évolution de l'activité.
Une info en direct est souvent appropriée pour les activités qui passent d'une info en direct à une notification normale. Par exemple, il est approprié d'afficher une notification de carte d'embarquement plusieurs heures avant le vol d'un utilisateur, mais la notification ne doit devenir une info en direct que lorsque l'utilisateur en a un besoin urgent, par exemple lorsqu'il est arrivé à l'aéroport ou sur le lieu de l'événement, ou une fois que l'embarquement a commencé. En revanche, une info en direct n'est pas appropriée pour suivre un colis, car l'utilisateur n'a pas besoin de le surveiller en permanence.
Pratiques d'UX
Utilisez l'icône de suivi pour visualiser l'état. Vous pouvez modifier cette valeur de manière dynamique.
Lorsqu'une heure d'arrivée prévue est en cours de calcul ou n'est pas encore disponible, n'affichez pas d'état vide. Fournissez un texte d'espace réservé actif tel que "Réflexion en cours..." ou "Nouvel itinéraire..." pour indiquer que le système fonctionne, comme illustré dans l'exemple.
Chips d'état
Les chips d'état permettent aux utilisateurs de suivre les infos en direct lorsque la notification n'est pas visible. Utilisez setShortCriticalText ou setWhen pour transmettre des informations d'état importantes concernant votre notification axée sur la progression.
Notification.Builder#setSmallIcon.
Notification.Builder#setShortCriticalText pour afficher l'heure absolue.
Notification.Builder#setShortCriticalText pour transmettre des informations critiques.Quand l'heure
L'heure de déclenchement lance un compte à rebours pour la durée de vie de la notification, sauf si celle-ci est ignorée ou mise à jour. Les puces suivantes décrivent le fonctionnement de l'heure dans différentes situations :
- L'heure de l'événement est postérieure d'au moins deux minutes à l'heure actuelle : si l'heure actuelle est 10h05 et que l'heure de l'événement est définie sur 10h10, le chip indique 5 min.
- Lorsque l'heure est passée : le texte ne s'affiche pas.
- Un minuteur peut s'afficher dans le chip lorsque vous utilisez Chronometer pour l'heure.
Consultez
setUsesChronometeretsetChronometerCountdown. Le chronomètre s'affiche dans le chip tant qu'il est positif. - Vous ne souhaitez pas que l'heure s'affiche dans votre notification : utilisez
setShowWhenpourFALSE.
Apparence du chip d'état
Le chip d'état inclut toujours une icône et, éventuellement, du texte. La largeur maximale du chip est de 96 dp. Le texte ne s'affiche que s'il tient entièrement dans le chip. Le texte s'affiche en fonction des critères suivants :
- S'il comporte moins de sept caractères, affichez l'intégralité du texte.
- Si moins de la moitié du texte s'affiche, n'affichez que l'icône.
- Si plus de la moitié du texte s'affiche, affichez-en autant que possible.
Wear OS
Les infos en direct sont transmises à certains appareils Wear OS connectés. Pour en savoir plus sur ce comportement de transition et sur la création d'infos en direct locales pour Wear OS, consultez le guide sur les infos en direct Wear OS.
Fermeture
Les utilisateurs peuvent contrôler la visibilité des notifications dans le volet des notifications. La publication d'infos en direct indésirables peut amener les utilisateurs à révoquer l'autorisation de publication d'une application.
Pour éviter que les utilisateurs ne désactivent complètement les infos en direct, évitez de publier des mises à jour qu'ils pourraient ignorer. Ne republiez pas les infos en direct que l'utilisateur a ignorées. Utilisez setDeleteIntent pour détecter les mises à jour ignorées.
Consultez l'application exemple pour tester ces API.
Questions fréquentes
Question : À quoi correspond le point blanc à la fin de la barre de progression ?
Réponse : Le point blanc à la fin de la barre de progression indique visuellement la fin de la barre de progression.
Question : Pourquoi les notifications personnalisées ne sont-elles pas compatibles avec les infos en direct ?
Réponse : Les notifications personnalisées compliquent les tests et l'expérience utilisateur, car leur comportement varie considérablement d'une version d'Android et d'un fabricant d'appareil à l'autre. Évitez les notifications personnalisées à l'aide de RemoteViews.