Les notifications fournissent aux conducteurs des informations courtes et opportunes sur les événements de votre application lorsqu'elle n'est pas utilisée. Les notifications peuvent apparaître dans le Centre de notifications et certaines notifications peuvent également apparaître sous forme de notifications prioritaires à l'écran. Utilisez la même API NotificationBuilder
que sur les autres appareils afin de créer des notifications pour Android Automotive OS. Toutefois, pour assurer la sécurité des conducteurs et minimiser les distractions, certaines méthodes et classes d'API sont limitées ou se comportent différemment.
Différences entre les notifications des voitures
Pour créer un environnement de conduite sûr et sans distractions, les notifications sur Android Automotive OS diffèrent des notifications sur d'autres appareils de la manière suivante :
- Interactions avec les utilisateurs simplifiées
- Restrictions de l'expérience utilisateur en fonction de l'état de conduite
Interactions avec les utilisateurs simplifiées
Pour que les conducteurs puissent se concentrer sur la route, les notifications dans la voiture suivent un modèle d'interaction utilisateur simplifié proposant les caractéristiques suivantes:
- Aucune commande complexe
- Les notifications n'autorisent pas les commandes complexes, telles que l'appui pour développer une notification, l'appui prolongé sur une notification pour afficher des options supplémentaires ou l'utilisation de commandes basées sur des gestes de balayage.
- Sons des notifications
- Les notifications n'émettent un son que si elles déclenchent une notification prioritaire.
Android Automotive OS ajoute automatiquement des boutons Lecture et Couper le son à toutes les notifications de messagerie compatibles avec la voiture.
- Lecture:lit la notification au conducteur à l'aide de l'assistant numérique par défaut de l'utilisateur, tel que l'Assistant Google, ou du système de synthèse vocale par défaut du véhicule.
Ignorer:empêche l'affichage de notifications prioritaires pour les futurs messages de la conversation pendant le reste du trajet. Les notifications de messages provenant d'une conversation dont le son est désactivé continuent d'apparaître dans le Centre de notifications. Le conducteur peut également réactiver le son de la conversation depuis le Centre de notifications.
- Options d'affichage des notifications simplifiées
RemoteViews
et les affichages de contenu personnalisés ne sont pas pris en charge. De plus, les styles de notification suivants ne sont pas pris en charge :BigPictureStyle
BigTextStyle
InboxStyle
Si votre application envoie une notification à Android Automotive OS à l'aide de l'un de ces styles de notification, seul le texte récapitulatif est affiché.
- Gestion du canal de notification simplifiée
Android Automotive OS n'est pas compatible avec les canaux de notification et les interfaces utilisateur associées, afin de réduire la prévalence des tâches de gestion enrichies sur les appareils automobiles.
Restrictions de l'expérience utilisateur en fonction de l'état de conduite
Android Automotive OS comprend un moteur de restrictions de l'expérience utilisateur. Les constructeurs automobiles peuvent utiliser ce moteur pour limiter les notifications en fonction de l'état de conduite de la voiture de différentes manières :
- Tronquer les chaînes de notification comportant une longueur de caractère spécifique
- Masquer les résumés des messages pour les notifications
CATEGORY_MESSAGE
- Limiter le nombre de notifications affichées par le Centre de notifications
Types de ressources pris en charge
Par défaut, Android Automotive OS ne prend en charge qu'un sous-ensemble limité de types de ressources pouvant être utilisés pour les notifications sur d'autres appareils. Ce sous-ensemble comprend les types de ressources suivants :
- Drawables
- Icônes
- Images
Exigences de compatibilité pour les notifications de messagerie
Pour fournir une expérience utilisateur cohérente et minimiser les distractions, les notifications de messagerie sont soumises à des exigences particulières sur Android Automotive OS.
Une notification de messagerie est compatible avec la voiture si elle répond aux exigences suivantes :
- Elle appartient à la catégorie
CATEGORY_MESSAGE
. - Elle utilise le style
Notification.MessagingStyle
. - Il n'inclut que les messages non lus.
Elle dispose d'un
Action
"Marquer comme lu" qui répond aux exigences suivantes:- L'action sémantique est définie sur
Action.SEMANTIC_ACTION_MARK_AS_READ
. Action
indique qu'il n'affiche aucune interface utilisateur lors de son déclenchement.
- L'action sémantique est définie sur
Si la notification comporte une
Action
de réponse, l'Action
répond aux exigences suivantes :- L'action sémantique est définie sur
Action.SEMANTIC_ACTION_REPLY
. Action
indique qu'il n'affiche aucune interface utilisateur lors de son déclenchement.Action
contient un seulRemoteInput
.
- L'action sémantique est définie sur
Centre de notifications
Presque toutes les notifications apparaissent dans le Centre de notifications, même si elles ont également été générées en tant que notifications prioritaires. Les notifications sont conservées dans le Centre de notifications pendant toute la durée d'un trajet.
Les conducteurs peuvent interagir avec les notifications dans le Centre de notifications. En fonction du constructeur automobile, les conducteurs peuvent accéder au Centre de notifications de l'une ou des deux manières suivantes :
- En balayant l'écran de haut en bas, comme pour le panneau des notifications sur d'autres appareils.
- Appui sur un bouton dans l'interface système.
Notifications groupées
Les notifications associées sont automatiquement regroupées dans le Centre de notifications, comme dans le panneau des notifications sur d'autres appareils. Toutefois, lorsqu'un conducteur appuie sur le résumé d'un groupe dans le Centre de notifications, au lieu de lancer un PendingIntent
, le groupe se développe pour afficher l'ensemble des notifications.
Notifications n'apparaissant pas dans le Centre de notifications
Les notifications suivantes n'apparaissent pas dans le Centre de notifications :
Media playback
. Les informations sur la lecture de contenus multimédias en cours sont collectées par Android Automotive OS et affichées à un endroit dédié dans l'interface utilisateur. Notez quesetMediaSession
doit être appelé avec un jeton non nul pour que la notification soit reconnue comme lecture de contenus multimédias.- Les notifications de navigation détaillée pour
CATEGORY_NAVIGATION
. - Les notifications de service de premier plan pour les applications privilégiées du système et les applications signées avec la clé de plate-forme dont le niveau d'importance est inférieur à
IMPORTANCE_DEFAULT
.
Notifications prioritaires
Les notifications prioritaires s'affichent sous forme de carte de notification en haut de l'écran. Étant donné qu'une notification prioritaire attire l'attention du conducteur, ne déclenchez une notification prioritaire que lorsque les informations sont critiques pour la conduite, urgentes et exploitables. Seules certaines catégories de notifications peuvent générer une notification prioritaire.
Les constructeurs automobiles peuvent choisir d'autoriser ou non l'affichage de notifications prioritaires lorsque le Centre de notifications est ouvert.
Méthode de génération de notifications prioritaires des applications
Les applications ont des exigences différentes pour déclencher une notification prioritaire selon qu'elles disposent ou non de droits système.
- Les applications privilégiées du système et signées avec la clé de plate-forme
- L'application peut générer une notification prioritaire en définissant l'importance du canal de notification sur
IMPORTANCE_HIGH
ou une valeur supérieure. - Toutes les autres applications
L'application peut déclencher une notification prioritaire en définissant l'importance du canal de notification sur
IMPORTANCE_HIGH
ou une valeur supérieure et en s'assurant que la notification appartient à l'une des catégories suivantes:
Cycle de vie d'une notification prioritaire
Lorsqu'une application génère une notification prioritaire, la notification apparaît immédiatement sur l'écran de la voiture. En l'absence d'action du conducteur, la notification prioritaire se ferme automatiquement au bout de huit secondes, sauf dans les cas suivants:
Les notifications prioritaires pour certains appels entrants ne peuvent pas être ignorées, et elles restent jusqu'à ce que le conducteur accepte l'appel ou que celui-ci soit interrompu. Pour être qualifiée de notification prioritaire impossible à ignorer pour un appel entrant, une notification doit répondre aux exigences suivantes :
- Elle doit appartenir à
CATEGORY_CALL
. - Elle doit définir un intent en plein écran.
- Elle doit être marquée comme étant en cours avec la méthode
setOngoing()
.
- Elle doit appartenir à
Les notifications prioritaires restent actives si une application met à jour la notification dans le délai de huit secondes.
Lorsqu'une notification prioritaire est ignorée, elle est répertoriée dans le Centre de notifications, sauf s'il s'agit d'une notification CATEGORY_NAVIGATION
.
Modifications et restrictions de l'API Notification pour les voitures
Cette section récapitule les différences pour chaque classe dans laquelle l'API Notifications se comporte différemment ou présente des restrictions pour Android Automotive OS.
"Notification.Builder"
Les tableaux 1 et 2 décrivent les modifications et restrictions de l'API dans la classe Notification.Builder
.
Tableau 1. Modifications des méthodes publiques pour Notification.Builder
Méthodes publiques | Effet | Description | ||
---|---|---|---|---|
|
Opération no-op conditionnelle | Les notifications Notification.MessagingStyle doivent ajouter les actions spécifiées dans les exigences de compatibilité. Les autres actions ajoutées ne seront pas affichées sous forme de boutons de notification. |
||
|
Opération no-op | RemoteViews et les affichages de contenu personnalisés ne sont pas pris en charge. |
||
|
Opération no-op | Les badges de notification ne sont pas pris en charge. | ||
| Opération no-op | Les retardateurs ne sont pas pris en charge. | ||
setColorized() |
Modification des contraintes |
Applications signées par une plate-forme: configurables et autorisées par défaut. Applications privilégiées du système: configurées par la plate-forme et non autorisées par défaut. Toutes les autres applications: configurée par plate-forme et non autorisée par défaut. |
||
setFullScreenIntent() |
Modification du comportement | Ne lance pas automatiquement l'intent. | ||
setLargeIcon() |
Modification du comportement | Les grandes icônes sont affichées à droite de la notification. | ||
setLights() |
Opération no-op | Les appareils Android Automotive OS ne sont pas équipés de voyants LED. | ||
setOngoing() |
Modification du comportement |
Le comportement est différent lorsque la notification déclenche également une notification prioritaire.
|
Opération no-op | Le mode privé n'est pas pris en charge. |
setSettingsText() |
Opération no-op | Les notifications ne prennent pas en charge les affordances associées aux paramètres de l'application. À la place, les conducteurs accèdent aux paramètres de l'application via l'application. | ||
setTicker() |
Opération no-op | Le texte du bandeau n'est pas pris en charge. |
Tableau 2. Modifications des classes imbriquées pour Notification.Builder
Classes imbriquées | Effet | Description |
---|---|---|
|
Non utilisé | Seul un texte récapitulatif s'affiche. Les notifications détaillées de ces styles ne sont pas prises en charge. |
Notification.BubbleMetadata |
Non utilisé | Les bulles ne sont pas prises en charge. |
Notification.MediaStyle |
Masqué | Les notifications avec ce style sont masquées. Android Automotive OS gère les interactions de l'interface utilisateur pour les notifications et la lecture des contenus multimédias. |
Notification.MessagingStyle |
Modification du comportement |
Les notifications avec ce style présentent les différences suivantes :
|
|
Non utilisé | Les répéteurs ne sont pas pris en charge. |
"Notification.Action.Builder"
Le tableau 3 décrit les modifications et les restrictions de l'API dans la classe Notification.Action.Builder
.
Tableau 3. Modifications des méthodes publiques pour Notification.Action.Builder
Méthodes publiques | Effet | Description |
---|---|---|
Constructeurs publics | Modification du comportement | Les icônes spécifiées dans les constructeurs publics sont ignorées. |
addRemoteInput |
Modification du comportement | Pour limiter les distractions du conducteur, un assistant numérique, tel que l'Assistant Google, insère la réponse à un message à l'attention de l'utilisateur. Les utilisateurs ne peuvent pas saisir de messages. |
setAllowGeneratedReplies |
Opération no-op | La fonctionnalité Réponse suggérée n'est pas prise en charge. |