Le notifiche forniscono ai conducenti informazioni brevi e tempestive sugli eventi della tua app quando non è in uso. Le notifiche possono essere visualizzate nel
Centro notifiche e alcune possono essere visualizzate anche come
notifiche in evidenza sul display. Per creare notifiche per
Android Automotive OS, utilizzi la stessa NotificationBuilder API che utilizzi per altri dispositivi. Tuttavia, per garantire la sicurezza dei conducenti e
ridurre al minimo le distrazioni, alcuni metodi e classi API sono limitati o si comportano
in modo diverso.
Differenze tra le notifiche in auto
Per creare un ambiente di guida sicuro e privo di distrazioni, le notifiche su Android Automotive OS differiscono dalle notifiche su altri dispositivi nei seguenti modi:
- Interazione utente semplificata
- Limitazioni della UX in base allo stato di guida
Interazione utente semplificata
Per garantire che i conducenti possano concentrarsi sulla strada, le notifiche in auto hanno un modello di interazione utente semplificato con le seguenti funzionalità:
- Nessun controllo complesso
- Le notifiche non consentono controlli complessi, come toccare per espandere una notifica, tenere premuta una notifica per visualizzare opzioni aggiuntive o utilizzare controlli basati su gesti di scorrimento.
- Suoni di notifica
- Le notifiche riproducono un suono solo se attivano una notifica in evidenza.
Android Automotive OS aggiunge automaticamente i pulsanti Riproduci e Disattiva a tutte le notifiche di messaggistica compatibili con l'auto.
- Riproduci:legge la notifica al conducente utilizzando l'assistente digitale predefinito dell'utente, ad esempio Gemini o l'Assistente Google, o il sistema di sintesi vocale predefinito del veicolo.
Disattiva:impedisce la visualizzazione di notifiche in evidenza per eventuali messaggi futuri nella conversazione per il resto della guida. Le notifiche dei messaggi di una conversazione disattivata vengono comunque visualizzate nel Centro notifiche e il conducente può anche riattivare l'audio della conversazione dal Centro notifiche.
- Opzioni di visualizzazione delle notifiche semplificate
RemoteViewse le visualizzazioni di contenuti personalizzati non sono supportate. Inoltre, i seguenti stili di notifica non sono supportati:Se la tua app invia una notifica ad Android Automotive OS utilizzando uno di questi stili di notifica, viene visualizzato solo il testo di riepilogo.
- Gestione semplificata dei canali di notifica
Android Automotive OS non supporta i canali di notifica e le relative funzionalità dell'interfaccia utente, per ridurre la prevalenza di attività di gestione avanzate nei dispositivi Automotive.
Limitazioni della UX in base allo stato di guida
Android Automotive OS include un motore di limitazione della UX. I produttori di auto possono utilizzare questo motore per limitare le notifiche in base allo stato di guida dell'auto nei seguenti modi:
- Troncando le stringhe di notifica a una lunghezza di caratteri specifica
- Nascondendo i riepiloghi dei messaggi per le
CATEGORY_MESSAGEnotifiche - Limitando il numero di notifiche che il Centro notifiche può visualizzare
Tipi di risorse supportati
Per impostazione predefinita, Android Automotive OS supporta un sottoinsieme limitato dei tipi di risorse che possono essere utilizzati per le notifiche su altri dispositivi. Questo sottoinsieme include i seguenti tipi di risorse:
- Drawables
- Icone
- Google Immagini
Requisiti di compatibilità per le notifiche di messaggistica
Per offrire un'esperienza utente coerente e con distrazioni minime, le notifiche di messaggistica hanno requisiti speciali su Android Automotive OS.
Una notifica di messaggistica è compatibile con l'auto se soddisfa i seguenti requisiti:
- Appartiene alla
CATEGORY_MESSAGEcategoria. - Utilizza lo stile
Notification.MessagingStyle. - Include solo i messaggi non letti.
Ha un'azione
Actiondi contrassegno come letto che soddisfa i seguenti requisiti:- L'azione semantica è impostata su
Action.SEMANTIC_ACTION_MARK_AS_READ. - L'azione
Actionindica che non mostra alcuna interfaccia utente quando viene attivata.
- L'azione semantica è impostata su
Se la notifica ha un'azione
Actiondi risposta, l'azioneActionsoddisfa i seguenti requisiti:- L'azione semantica è impostata su
Action.SEMANTIC_ACTION_REPLY. - L'azione
Actionindica che non mostra alcuna interfaccia utente quando viene attivata. - Il
Actioncontiene un singoloRemoteInput.
- L'azione semantica è impostata su
Centro notifiche
Quasi tutte le notifiche vengono visualizzate nel Centro notifiche, anche se sono state attivate anche come notifiche in evidenza. Le notifiche rimangono nel Centro notifiche per tutta la durata della guida.
I conducenti possono interagire con le notifiche nel Centro notifiche. A seconda del produttore dell'auto, i conducenti accedono al Centro notifiche in uno o entrambi i seguenti modi:
- Scorrendo verso il basso dalla parte superiore dello schermo, in modo simile al riquadro delle notifiche su altri dispositivi.
- Toccando un pulsante nell'interfaccia di sistema.
Notifiche raggruppate
Le notifiche correlate vengono raggruppate automaticamente nel centro notifiche, come nel riquadro a scomparsa delle notifiche su altri dispositivi. Tuttavia, quando un conducente
tocca il riepilogo di un gruppo nel Centro notifiche, anziché avviare un
PendingIntent, il gruppo si espande per mostrare tutte le notifiche.
Notifiche che non vengono visualizzate nel Centro notifiche
Le seguenti notifiche non vengono visualizzate nel Centro notifiche:
Media playbacknotifiche. Android Automotive OS raccoglie informazioni sulla riproduzione dei contenuti multimediali in corso e le visualizza in un punto dedicato dell'interfaccia utente. Tieni presente che devi chiamaresetMediaSessioncon un token non nullo affinché il sistema riconosca la notifica come riproduzione dei contenuti multimediali.- Notifiche di navigazione passo passo per
CATEGORY_NAVIGATION. - Notifiche del servizio in primo piano per le app con privilegi di sistema e le app che
sono firmate con la platform key che hanno un livello di importanza inferiore a
IMPORTANCE_DEFAULT.
Notifiche in evidenza
Le notifiche in evidenza vengono visualizzate come una scheda di notifica nella parte superiore dello schermo. Poiché una notifica in evidenza attira l'attenzione del conducente, attivala solo quando le informazioni sono fondamentali per la guida, urgenti e richiedono un'azione. Solo alcune categorie di notifiche possono attivare una notifica in evidenza.
I produttori di auto possono decidere se consentire la visualizzazione delle notifiche in evidenza mentre il Centro notifiche è aperto.
Come le app attivano le notifiche in evidenza
Le app hanno requisiti diversi per l'attivazione di una notifica in evidenza a seconda che abbiano o meno privilegi di sistema.
- App con privilegi di sistema e app firmate con la platform key
- L'app può attivare una notifica in evidenza impostando l'importanza del canale di notifica
su
IMPORTANCE_HIGHo su un valore superiore. - Tutte le altre app
L'app può attivare una notifica in evidenza impostando l'importanza del canale di notifica su
IMPORTANCE_HIGHo su un valore superiore e verificando che la notifica appartenga a una delle seguenti categorie:
Durata di una notifica in evidenza
Dopo che un'app attiva una notifica in evidenza, la notifica viene visualizzata immediatamente sullo schermo dell'auto. Se il conducente non esegue alcuna azione, la notifica in evidenza viene ignorata automaticamente dopo 8 secondi, tranne nei seguenti casi:
Le notifiche in evidenza per alcune chiamate in arrivo non possono essere ignorate e rimangono finché il conducente non accetta la chiamata o la chiamata non viene terminata. Per essere considerata una notifica in evidenza non ignorabile per una chiamata in arrivo, una notifica deve soddisfare i seguenti requisiti:
- Appartenere a
CATEGORY_CALL - Impostare un intent a schermo intero
- Essere contrassegnata come in corso utilizzando il
setOngoing()metodo
- Appartenere a
Le notifiche in evidenza rimangono se un'app aggiorna la notifica entro la finestra di tempo di otto secondi.
Quando una notifica in evidenza viene ignorata, viene visualizzata nel
Centro notifiche, a meno che non si tratti di una CATEGORY_NAVIGATION notifica.
Modifiche e limitazioni dell'API Notification per le auto
Questa sezione riassume le differenze per ogni classe in cui l'API Notifications si comporta in modo diverso o presenta limitazioni per Android Automotive OS.
Notification.Builder
Le tabelle 1 e 2 descrivono le modifiche e le limitazioni dell'API nella
Notification.Builder classe.
Tabella 1. Modifiche ai metodi pubblici per Notification.Builder
| Metodi pubblici | Effetto | Descrizione |
|---|---|---|
|
|
Operazione no-op condizionale | Notification.MessagingStyle notifiche devono aggiungere le
azioni specificate nei
requisiti di compatibilità. Le azioni aggiuntive non verranno visualizzate come pulsanti di notifica. |
|
|
Operazione no-op | RemoteViews
e le visualizzazioni di contenuti personalizzati non sono supportate. |
|
|
Operazione no-op | I badge delle notifiche non sono supportati. |
|
|
Operazione no-op | I timer per il conto alla rovescia non sono supportati. |
setColorized() |
Vincoli modificati |
App firmate dalla piattaforma: configurabili; consentite per impostazione predefinita. App con privilegi di sistema: configurate dalla piattaforma; non consentite per impostazione predefinita. Tutte le altre app: configurate dalla piattaforma; non consentite per impostazione predefinita. |
setFullScreenIntent() |
Comportamento modificato | Non avvia automaticamente l'intent. |
setLargeIcon() |
Comportamento modificato | Le icone grandi vengono visualizzate sul lato destro della notifica. |
setLights() |
Operazione no-op | I dispositivi Android Automotive OS non hanno spie LED. |
setOngoing() |
Comportamento modificato |
Il comportamento è diverso quando la notifica attiva anche una notifica in evidenza.
I conducenti possono ignorare tutti gli altri tipi di notifiche in evidenza. |
|
|
Operazione no-op | La modalità privata non è supportata. |
setSettingsText() |
Operazione no-op | Le notifiche non supportano le funzionalità che rimandano alle impostazioni dell'app. I conducenti accedono alle impostazioni dell'app tramite l'app. |
setTicker() |
Operazione no-op | Il testo del ticker non è supportato. |
Tabella 2. Modifiche alle classi nidificate per Notification.Builder
| Classi nidificate | Effetto | Descrizione |
|---|---|---|
|
|
Non utilizzata | Viene visualizzato solo il testo di riepilogo. Le notifiche dettagliate per questi stili non sono supportate. |
Notification.BubbleMetadata |
Non utilizzata | Le bolle non sono supportate. |
Notification.MediaStyle |
Nascosta | Le notifiche con questo stile sono nascoste. Android Automotive OS gestisce le interazioni dell'interfaccia utente per le notifiche e la riproduzione dei contenuti multimediali. |
Notification.MessagingStyle |
Comportamento modificato |
Le notifiche con questo stile presentano le seguenti differenze:
|
|
|
Non utilizzata | Gli extender non sono supportati. |
Notification.Action.Builder
La tabella 3 descrive le modifiche e le limitazioni dell'API nella classe
Notification.Action.Builder.
Tabella 3. Modifiche ai metodi pubblici per Notification.Action.Builder
| Metodi pubblici | Effetto | Descrizione |
|---|---|---|
| Costruttori pubblici | Comportamento modificato | Le icone specificate nei costruttori pubblici vengono ignorate. |
addRemoteInput |
Comportamento modificato | Per ridurre al minimo le distrazioni del conducente, un assistente digitale, come Gemini o l'Assistente Google, inserisce la risposta a un messaggio per l'utente. Gli utenti non possono digitare messaggi. |
setAllowGeneratedReplies |
Operazione no-op | La Risposta rapida non è supportata. |