L'interfaccia utente scalabile migliora la tua capacità di creare configurazioni multi-finestra in Android Automotive OS (AAOS). L'interfaccia utente scalabile fornisce un framework che puoi utilizzare per orchestrare dove e come vengono visualizzate le app sullo schermo. Il risultato è un maggiore controllo sul flusso di informazioni.
Gli sviluppatori di app di sistema possono prendere in considerazione questi fattori.
Container di app configurabili
I pannelli dell'interfaccia utente scalabili fungono da contenitori configurabili per le app, il che consente la creazione di layout diversi in cui le app possono apparire contemporaneamente sullo schermo o in dimensioni diverse.
L'interfaccia utente scalabile supporta le modifiche alle dimensioni del riquadro in fase di runtime. Tuttavia, questa operazione ha un impatto significativo sulle prestazioni, poiché le app devono modificare i propri contenuti.
L'interfaccia utente scalabile fornisce meccanismi per ridurre l'impatto visivamente. Ad esempio, fornendo una schermata Overlay integrata durante il ridimensionamento dei riquadri per evitare la riorganizzazione dell'applicazione per frame. Spetta a te definire l'esperienza della tua app.
Comunicare gli stati del sistema
Puoi utilizzare Scalable UI per attivare eventi di sistema basati sulla trasmissione, il che significa che puoi configurare regole per quando e come vengono avviate le diverse app e quali eventi di sistema sono visibili a queste app di sistema.
In questo modo, le app di sistema sono più flessibili quando reagiscono agli eventi definiti a livello di sistema. Ad esempio, un NavigationCardActivity
può essere configurato per
avviarsi quando una sessione di navigazione attiva e l'app di navigazione non sono sullo schermo. Può
anche consentire alle app di sistema di cambiare il tema cromatico in base a segnali centralizzati
controllati dalla velocità di un veicolo.
Sviluppatori di app di terze parti
Gli sviluppatori di app di terze parti devono tenere in considerazione questi aspetti quando attivano configurazioni multi-finestra.
Posizionamento del riquadro delle app: le app potrebbero essere posizionate in riquadri di varie dimensioni, il che richiede una progettazione dell'interfaccia utente reattiva. Questo è necessario per le app in qualsiasi configurazione multi-finestra e non è dovuto all'interfaccia utente scalabile.
Gestione degli inset: le app devono gestire gli inset (aree dello schermo occupate da elementi UI di sistema o intagli del display). I pannelli pubblicano aggiornamenti sui propri inset, consentendo alle app di adattarsi. Ciò è richiesto dai requisiti di Android che prevedono che le app gestiscano le modifiche all'inset di sistema e non a causa dell'interfaccia utente scalabile.
Modalità immersiva: devono essere prese in considerazione le app che utilizzano la modalità immersiva (in cui le barre di sistema possono essere nascoste e l'app riempie lo schermo). L'interfaccia utente scalabile ti consente di controllare la definizione della modalità immersiva e la modalità di definizione del posizionamento di ogni riquadro in questa modalità.
Devi determinare come utilizzare la modalità immersiva in base alla sicurezza del conducente e ad altri requisiti.
In base ai requisiti di Android, un'app non può aspettarsi che un'altra app riempia lo schermo in seguito a una richiesta di modalità immersiva. Il sistema operativo concede o rifiuta queste richieste.