Glossario e concetti

Questa terminologia e questi concetti vengono utilizzati in tutta questa sezione.

CarAppService
CarAppService è una classe astratta Service che la tua app deve implementare ed esportare per essere rilevata e gestita dall'host. CarAppService della tua app utilizza createHostValidator per convalidare che una connessione host sia attendibile e, successivamente, utilizza onCreateSession per fornire istanze Session per ogni connessione.
Host

L'host è il componente di backend che implementa la funzionalità offerta dalle API della libreria in modo che la tua app possa essere eseguita in auto. L'host fornisce una gamma di servizi, dalla scoperta dell'app e dalla gestione del suo ciclo di vita alla conversione dei modelli in visualizzazioni e alla notifica all'app delle interazioni degli utenti.

Sui dispositivi mobili, questo host viene implementato da Android Auto. Su Android Automotive OS, questo host viene installato come app di sistema.

Modelli e template

L'interfaccia utente è rappresentata da un grafico di oggetti modello che puoi disporre insieme in modi diversi, in base al modello a cui appartengono. I modelli sono un sottoinsieme dei modelli che fungono da radice nei grafici.

I modelli includono le informazioni da mostrare all'utente sotto forma di testo e immagini, nonché gli attributi per configurare gli aspetti dell'aspetto visivo di queste informazioni. Ad esempio, i colori del testo o le dimensioni delle immagini.

L'host converte i modelli in visualizzazioni che soddisfano gli standard di distrazione del conducente e i dettagli dell'indirizzo, come la varietà di fattori dello schermo dell'auto e le modalità di input.

Screen

Screen è una classe fornita dalla libreria che le app implementano per gestire l'interfaccia utente visibile all'utente.

Un Screen ha un ciclo di vita e viene utilizzato dall'app per inviare il modello da visualizzare quando lo schermo è visibile. Le istanze Screen possono anche essere inserite e rimosse da uno stack Screen per verificare che rispettino le limitazioni del flusso del modello.

Session

Session è una classe astratta che la tua app deve implementare e restituire utilizzando CarAppService.onCreateSession. Un Session funge da punto di accesso per visualizzare le informazioni sullo schermo dell'auto. Session ha un ciclo di vita che indica lo stato attuale dell'app sullo schermo dell'auto, ad esempio quando l'app è visibile o nascosta.

Quando viene avviato un Session, ad esempio al primo avvio dell'app, l'host utilizza il metodo onCreateScreen per chiedere quale Screen iniziale visualizzare.

Limitazioni dei modelli

Modelli diversi impongono limitazioni nel contenuto dei modelli. Ad esempio, i modelli di elenco impongono limiti al numero di elementi che possono essere presentati all'utente.

I modelli hanno anche limitazioni nel modo in cui possono essere collegati per formare il flusso di un'attività. Ad esempio, un'app può inviare fino a cinque modelli alla pila di schermate. Per saperne di più, consulta Limitazioni dei modelli.