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 anche essere visualizzate come
notifiche in evidenza sul display. Per creare notifiche per il sistema operativo Android Automotive, utilizza la stessa API NotificationBuilder
che utilizzi per gli altri dispositivi. Tuttavia, per garantire la sicurezza dei conducenti e ridurre al minimo le distrazioni, alcuni metodi e classi dell'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 sul sistema operativo Android Automotive sono diverse da quelle su altri dispositivi per i seguenti modi:
- Interazione utente semplificata
- Limitazioni dell'UX in base allo stato dell'unità
Interazione utente semplificata
Per consentire ai conducenti di concentrarsi sulla strada, le notifiche nell'auto presentano 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, premere a lungo una notifica per visualizzare opzioni aggiuntive o usare controlli basati su gesti di scorrimento lunghi.
- Suoni di notifica
- Le notifiche emettono un suono solo se attivano una notifica in evidenza.
Il sistema operativo Android Automotive aggiunge automaticamente i pulsanti Play e Disattiva audio a tutte le notifiche di messaggi compatibili con l'auto.
- Play: legge la notifica al conducente utilizzando l'assistente digitale predefinito dell'utente, ad esempio l'Assistente Google o il sistema di sintesi vocale predefinito del veicolo.
Disattiva audio: impedisce la visualizzazione di notifiche in evidenza per i futuri messaggi della conversazione per il resto del viaggio. Le notifiche di messaggi provenienti da una conversazione disattivata continuano a essere visualizzate nel Centro Notifiche e il conducente può anche riattivare l'audio della conversazione dal Centro notifiche.
- Opzioni di visualizzazione delle notifiche semplificate
RemoteViews
e le visualizzazioni di contenuti personalizzate non sono supportate. Inoltre, non sono supportati i seguenti stili di notifica:BigPictureStyle
BigTextStyle
InboxStyle
Se l'app invia una notifica al sistema operativo Android Automotive utilizzando uno di questi stili di notifica, viene mostrato solo il testo di riepilogo.
- Gestione semplificata dei canali di notifica
Il sistema operativo Android Automotive non supporta i canali di notifica e le relative affinità UI, per ridurre la prevalenza di attività di gestione avanzate nei dispositivi Automotive.
Limitazioni dell'UX in base allo stato dell'unità
Il sistema operativo Android Automotive include un motore per le restrizioni dell'UX. I produttori di automobili possono utilizzare questo motore per limitare le notifiche in base allo stato di guida dell'auto nei seguenti modi:
- Troncamento delle stringhe di notifica a una lunghezza di caratteri specifica
- Nascondere i riepiloghi dei messaggi per le notifiche
CATEGORY_MESSAGE
- Limitare il numero di notifiche che il Centro Notifiche può visualizzare
Tipi di risorse supportati
Per impostazione predefinita, il sistema operativo Android Automotive supporta un sottoinsieme limitato di tipi di risorse che possono essere utilizzati per le notifiche su altri dispositivi. Questo sottoinsieme include i seguenti tipi di risorse:
- Disegnabili
- Icone
- Immagini
Requisiti di compatibilità per le notifiche di messaggi
Per offrire un'esperienza utente omogenea e che distrae solo le notifiche, le notifiche di messaggistica hanno requisiti speciali sul sistema operativo Android Automotive.
Una notifica di messaggistica è compatibile con l'auto se soddisfa i seguenti requisiti:
- Appartiene alla categoria
CATEGORY_MESSAGE
. - Utilizza lo stile
Notification.MessagingStyle
. - Sono inclusi solo i messaggi da leggere.
Ha un
Action
Segna come letto che soddisfa i seguenti requisiti:- L'azione semantica è impostata su
Action.SEMANTIC_ACTION_MARK_AS_READ
. Action
indica che non mostra alcuna interfaccia utente quando viene attivato.
- L'azione semantica è impostata su
Se la notifica ha una risposta
Action
,Action
soddisfa i seguenti requisiti:- L'azione semantica è impostata su
Action.SEMANTIC_ACTION_REPLY
. Action
indica che non mostra alcuna interfaccia utente quando viene attivato.- L'elemento
Action
contiene un singoloRemoteInput
.
- L'azione semantica è impostata su
Centro notifiche
Quasi tutte le notifiche vengono visualizzate nel centro notifiche, anche se tali notifiche sono state attivate anche come notifiche in evidenza. Le notifiche restano nel centro notifiche per tutta la durata di un viaggio.
I conducenti possono interagire con le notifiche nel Centro Notifiche. A seconda del produttore dell'auto, i conducenti possono accedere al centro notifiche in uno dei seguenti modi o in entrambi i modi:
- Scorrimento verso il basso dalla parte superiore dello schermo, come nel riquadro a scomparsa 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, invece di avviare una PendingIntent
, il gruppo si espande per mostrare tutte le relative notifiche.
Notifiche che non vengono visualizzate nel Centro Notifiche
Le seguenti notifiche non vengono visualizzate nel centro notifiche:
- Notifiche relative alla riproduzione di contenuti multimediali per
CATEGORY_TRANSPORT
. Le informazioni sulla riproduzione di contenuti multimediali in corso vengono raccolte dal sistema operativo Android Automotive e visualizzate in una posizione dedicata nell'interfaccia utente. - Notifiche di navigazione passo passo per
CATEGORY_NAVIGATION
. - Notifiche di servizio in primo piano per le app con privilegi di sistema e le app firmate con la chiave della piattaforma che hanno un livello di importanza inferiore a
IMPORTANCE_DEFAULT
.
Notifiche in evidenza
Le notifiche in evidenza vengono visualizzate come scheda di notifica nella parte superiore dello schermo. Poiché una notifica di avviso attira l'attenzione del conducente, può attivare una notifica di avviso solo se le informazioni sono importanti per la guida, sono sensibili al tempo e utili. Solo determinate 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 notifiche in evidenza, a seconda che abbiano privilegi di sistema.
- App e app con privilegi di sistema firmate con la chiave della piattaforma
- L'app può attivare una notifica in evidenza impostando l'importanza del canale di notifica su
IMPORTANCE_HIGH
o su un livello superiore. - Tutte le altre app
L'app può attivare una notifica in evidenza impostando l'importanza del canale di notifica su
IMPORTANCE_HIGH
o superiore e garantendo che la notifica appartenga a una delle seguenti categorie:
Vita di una notifica in evidenza
Dopo che un'app ha attivato una notifica in evidenza, questa viene visualizzata immediatamente sullo schermo dell'auto. Se il conducente non intraprende alcuna azione, la notifica si chiude automaticamente dopo otto secondi, tranne nei seguenti casi:
Le notifiche in evidenza per determinate chiamate in arrivo non possono essere ignorate e rimangono attive finché il conducente non accetta la chiamata o non viene terminata. Per essere considerata una notifica in evidenza non ignorabile per una chiamata in arrivo, una notifica deve soddisfare i seguenti requisiti:
- Appartieni a
CATEGORY_CALL
- Impostare un intent a schermo intero
- Essere contrassegnati come in corso utilizzando il metodo
setOngoing()
- Appartieni a
Le notifiche in evidenza rimangono se un'app aggiorna la notifica entro l'intervallo di tempo di otto secondi.
Quando una notifica in evidenza viene ignorata, viene elencata nel Centro notifiche, a meno che non si tratti di una notifica di CATEGORY_NAVIGATION
.
Modifiche e restrizioni relative all'API Notification per le auto
Questa sezione riassume le differenze per ogni classe in cui l'API Notifications si comporta in modo diverso o ha limitazioni per il sistema operativo Android Automotive.
Builder Notifiche
Le tabelle 1 e 2 descrivono le modifiche e le limitazioni dell'API nella classe Notification.Builder
.
Tabella 1. Modifiche ai metodi pubblici per Notification.Builder
Metodi pubblici | Effetto | Descrizione | ||
---|---|---|---|---|
|
No-op condizionale | Alle notifiche Notification.MessagingStyle devono essere aggiunte
le azioni specificate nei
requisiti di compatibilità. Eventuali azioni aggiuntive aggiunte non verranno visualizzate come pulsanti di notifica. |
||
|
Autonomo | RemoteViews
e le visualizzazioni di contenuti personalizzate non sono supportate. |
||
|
Autonomo | I badge di notifica non sono supportati. | ||
| Autonomo | I timer con 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 | Sul lato destro della notifica sono visualizzate icone grandi. | ||
setLights() |
Autonomo | I dispositivi con sistema operativo Android Automotive non hanno spie LED. | ||
setOngoing() |
Comportamento modificato |
Il comportamento è diverso quando la notifica attiva anche una notifica in evidenza.
|
Autonomo | La modalità privata non è supportata. |
setSettingsText() |
Autonomo | Le notifiche non supportano le autorizzazioni che rimandano alle impostazioni dell'app. I conducenti possono invece accedere alle impostazioni dell'app tramite l'app stessa. | ||
setTicker() |
Autonomo | Il testo ticker non è supportato. |
Tabella 2. Modifiche alle classi nidificate per Notification.Builder
Classi nidificate | Effetto | Descrizione |
---|---|---|
|
Not used | Viene visualizzato solo il testo di riepilogo. Le notifiche dettagliate per questi stili non sono supportate. |
Notification.BubbleMetadata |
Not used | Le bolle non sono supportate. |
Notification.MediaStyle |
Stato nascosto | Le notifiche con questo stile sono nascoste. Il sistema operativo Android Automotive gestisce le interazioni dell'interfaccia utente per la riproduzione e le notifiche multimediali. |
Notification.MessagingStyle |
Comportamento modificato |
Le notifiche con questo stile presentano le seguenti differenze:
|
|
Not used | 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 alla guida, un assistente digitale, come l'Assistente Google, inserisce la risposta a un messaggio per l'utente. Gli utenti non possono digitare i messaggi. |
setAllowGeneratedReplies |
Autonomo | La funzionalità Risposta rapida non è supportata. |