App Auto

Crea app basate su modelli per Android Auto e Android Automotive.
Aggiornamento più recente Release stabile Candidato per la release Versione beta Release alpha
17 aprile 2024 1.2.0 1.4.0-rc02 - 1.7.0-alpha02

Dichiarazione delle dipendenze

Per aggiungere una dipendenza alla libreria di app per auto, devi aggiungere il repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Trendy

dependencies {
    implementation "androidx.car.app:app:1.2.0"

    // For Android Auto specific functionality
    implementation "androidx.car.app:app-projected:1.2.0"

    // For Android Automotive specific functionality
    implementation "androidx.car.app:app-automotive:1.2.0"

    // For testing
    testImplementation "androidx.car.app:app-testing:1.2.0"
}

Kotlin

dependencies {
    implementation("androidx.car.app:app:1.2.0")

    // For Android Auto specific functionality
    implementation("androidx.car.app:app-projected:1.2.0")

    // For Android Automotive specific functionality
    implementation("androidx.car.app:app-automotive:1.2.0")

    // For testing
    testImplementation("androidx.car.app:app-testing:1.2.0")
}

Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Versione 1.7

Versione 1.7.0-alpha02

17 aprile 2024

androidx.car.app:app-*:1.7.0-alpha02 viene rilasciato. La versione 1.7.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Sono stati aggiunti flag deprecati per i modelli basati su mappe che MapWithContent modello baseranno in futuro.

Modifiche alle API

  • Ritira le versioni precedenti di MapTemplate, RoutePreviewNavigationTemplate e PlaceListNavigationTemplate e incoraggia l'utilizzo del nuovo MapWithContentTemplate (Ib0a08)

Versione 1.7.0-alpha01

3 aprile 2024

androidx.car.app:app-*:1.7.0-alpha01 viene rilasciato. Abbiamo spostato lo schema di controllo delle versioni della nostra libreria in modo che corrisponda alla versione attiva di CarApi. In questo modo si riduce la confusione sullo schema di denominazione basato sul feedback degli sviluppatori. Di conseguenza, ignoreremo le versioni 1.5 / 1.6 passando direttamente alla versione 1.7. La versione 1.7.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Mappa con contenuti. Nuovo modello denominato MapWithContent che supporta Elenco / Griglia / Riquadro / Messaggio come contenuto all'interno di una mappa.
    • I modelli RoutePreview, PlaceListNavigation e di mappa sono stati ritirati.
    • Le app di esempio sono state aggiornate per mostrare le funzionalità dei modelli deprecati utilizzando MapWithContent.
  • Voce di conversazione: nuove API per la visualizzazione delle conversazioni (chat, SMS) e lettura dell'assistente nell'auto.
  • Dimensioni del veicolo: nuova API per recuperare le misure del veicolo (dati al momento su AAOS).

Modifiche alle API

  • Contrassegna il tipo di immagine riga extra piccola come sperimentale (I5184b)
  • È stata aggiunta l'API CarInfo#fetchExteriorDimensions che consente di accedere a informazioni sulle dimensioni esterne del veicolo come altezza, larghezza e così via (Ia40c5)
  • Tag ExperimentalAPI rimosso da MapWithContentTemplate (I66db8)
  • Aggiorna il parametro GridItem#setTitle in modo che sia nullo. (I3d610)
  • L'API GetHeader non richiede l'API 7 perché è compatibile con le versioni precedenti (I8c812)
  • Aggiungi il supporto per Header in ListTemplate, ritira headerAction, headerTitle, actionStrip (I7ae01)
  • Ritira title, headerAction, actionStrip in GridTemplate e aggiungi il supporto per Header (I41a9c)
  • Rimuovi il requisito di livello 7 per le API sperimentali: badge, GridTemplate dimensione degli elementi e getter/setter di forma delle immagini, GridItem metodi per ottenere/impostare il badge. (Id71eb)
  • Ritira title, headerAction, actionStrip in PaneTemplate, aggiungi nuovo supporto Header (I23154)
  • Telemetria di Media Center modificata da BroadcastReceiver a Sfoglia azione personalizzata. (I4185f)
  • Aggiunto il supporto per gli attributi Header in MessageTemplate. Supporto ritirato per ActionStrip, headerAction e title. (Ie2de8).
  • Modifica della visibilità della costante di avviso (Icf8a8)
  • Rimuovi l'attributo isLoading dal modello principale (I651e6)
  • Aggiungi extra per indicare alle app multimediali i parametri principali dell'interfaccia utente (I85ca2)
  • Aggiungere la funzionalità di analisi del centro multimediale a MediaExtensions (I7ce28)
  • Aggiunta un'opzione per un'immagine di piccole dimensioni sulle righe. (I72c03)

Correzioni di bug

  • Aggiorna javadoc su ConversationItem per indicare che i messaggi devono essere ordinati dal meno recente al più recente. (I77a2a).
  • Aggiorna la logica di troncamento di ListTemplate per rimuovere i messaggi meno recenti da ConversationItem (Ie0a61)

Versione 1.4

Versione 1.4.0-rc02

13 dicembre 2023

androidx.car.app:app-*:1.4.0-rc02 viene rilasciato. La versione 1.4.0-rc02 contiene questi commit.. Solo correzioni di minore entità

Correzioni di bug

  • Aggiorna javadoc su ConversationItem per indicare che i messaggi devono essere ordinati dal meno recente al più recente (I77a2a)
  • Aggiorna la logica di troncamento di ListTemplate per rimuovere i messaggi meno recenti da ConversationItem (Ie0a61)

Versione 1.4.0-rc01

1° novembre 2023

androidx.car.app:app-*:1.4.0-rc01 viene rilasciato senza modifiche degne di nota. La versione 1.4.0-rc01 contiene questi commit..

Versione 1.4.0-beta02

20 settembre 2023

androidx.car.app:app-*:1.4.0-beta02 viene rilasciato. La versione 1.4.0-beta02 contiene questi commit.. Questo valore è quasi identico a beta01, ma riduce a 33 il requisito compileSdk.

Correzioni di bug

  • Correggi un bug per cui le schermate di caricamento nelle schede non venivano visualizzate correttamente. (cae860)

Versione 1.4.0-beta01

9 agosto 2023

androidx.car.app:app-*:1.4.0-beta01 viene rilasciato. La versione 1.4.0-beta01 contiene questi commit..

Nota: 1.4-beta01 richiede compileSdk34, che è ancora nello stato dev. La versione 1.4-beta02 risolve questo problema. In alternativa, puoi aggiungere android.suppressUnsupportedCompileSdk=34 al file settings.gradle del tuo progetto per eliminare temporaneamente l'avviso in modo sicuro.

Nuove funzionalità

Modifiche alle API

  • Vedi alpha02

Versione 1.4.0-alpha02

26 luglio 2023

androidx.car.app:app-*:1.4.0-alpha02 viene rilasciato. La versione 1.4.0-alpha02 contiene questi commit.

  • La release di Alpha02 è destinata alla preparazione di una versione futura della versione beta01.

Nuove funzionalità

  • Rendering della mappa sul supporto del quadro strumenti per le app di navigazione
  • Sono state aggiunte schede per le app per migliorare l'esperienza di layout
  • Aggiunta di opzioni di rendering per elenco / modello di griglia
  • Sono state aggiunte nuove categorie per Meteo e Comunicazioni
  • Spostare diverse API nella prossima release di CarApi 7

Modifiche alle API

  • Aggiungi campi multimediali a CarMessage (I5aaf6)
  • Aggiunge azioni personalizzate a ConversationItem nella libreria di app per auto (Ie5ed6)
  • Aggiungi extra per indicare che un elemento multimediale viene riprodotto con un formato audio immersivo e mostra il logo del formato dei contenuti (Icb5bb)
  • Aggiungi un nuovo tipo di azione, l'API ActionsConstraints per supportare il pulsante Scrivi. (I31661)
  • Creato set/getTemplate come set/get ContentTemplate (Ica036)
  • Il parametro del modello ora deve essere @NonNull. Documentazione dell'API MapWithContentTemplate aggiornata (I0f8ed)
  • Rimuove il tag @ExperimentalCarApi per le azioni in ListTemplate per il lancio in CAL 1.4 (I2cfcb)
  • Rimuove il tag @ExperimentalCarApi per TabTemplate (Ifcb82)
  • Rimuovi le annotazioni @ExperimentalCarApi dalle azioni secondarie e dalle decorazioni della riga (I8487e)
  • Aggiunge l'ID contenuto della scheda attivo a TabTemplate e ritira lo stato attivo nelle schede (I96932)
  • Aggiungi la proprietà ItemImageShape a GridTemplate (Ibf431)
  • Aggiungi la proprietà ItemSize a GridTemplate per controllare le dimensioni degli elementi della griglia in base a bucket relativi piccoli, medi e grandi. (Icdb3b)
  • Consenti agli sviluppatori di accedere all'API per ottenere una copia dello stack attuale delle schermate. (I48107)
  • Aggiunge la categoria per le app meteo alla Raccolta di app per auto (I2be44)
  • Aggiunge una categoria per chiamare le app alla Raccolta di app per auto (Icab33)
  • GridItem.Builder#setBadge() sostituito con metodi setImage() con sovraccarico (Id2000)
  • Aggiungi la proprietà dell'icona al badge (I629b2)
  • Aggiungi un metodo per impostare il colore di sfondo del badge a forma di punto (I6411c)
  • Aggiungi la proprietà del badge a GridItem per consentire la visualizzazione di un badge sopra un'immagine di GridItem. (I95de7)
  • È stato aggiunto un oggetto Badge sperimentale che rappresenterà un badge da mostrare sopra un'immagine. (I9878d)

Versione 1.4.0-alpha01

22 febbraio 2023

androidx.car.app:app-*:1.4.0-alpha01 viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.

Modifiche alle API

  • Aggiunge azioni di primo livello a GridTemplate nella Raccolta di app per auto (Id0191)
  • Aggiunge azioni di primo livello a ListTemplate nella libreria di app per auto (I9efab)
  • Aggiungi extra per collegare il sottotitolo o la relativa descrizione di un elemento multimediale ad altri elementi multimediali (Ic84bf)
  • Aggiorna il livello API per le azioni di riga al livello 6. (Ie0a69)
  • Aggiungi i callback di messaggistica ad A4C (Ie3986)

Correzioni di bug

  • Aggiungi riferimenti a doc Java mancanti per CarMessage. (I5db1c)
  • Esegui l'override di equals() e hashCode() per ConversationItem e CarMessage (I6fd10)
  • Migliora la convalida di ConversationItem.mMessages (richiede un valore non null o non vuoto (Iafc51)
  • Aggiungi @Keep annotazioni a ConversationItem campi (I5d250)
  • Aggiorna i documenti Java per la decorazione delle righe e le azioni secondarie. (I000b6)

Versione 1.3

Versione 1.3.0-rc01

7 dicembre 2022

androidx.car.app:app-*:1.3.0-rc01 viene rilasciato. La versione 1.3.0-rc01 contiene questi commit.

  • Correzioni di bug minori nella versione beta01. Nessun cambiamento importante.

Versione 1.3.0-beta01

7 settembre 2022

androidx.car.app:app:1.3.0-beta01, androidx.car.app:app-projected:1.3.0-beta01, androidx.car.app:app-automotive:1.3.0-beta01 e androidx.car.app:app-testing:1.3.0-beta01 vengono rilasciati. La versione 1.3.0-beta01 contiene questi commit.

Nuove funzionalità

Oltre alle funzionalità aggiunte in Car App Library 1.3.0-alpha01, le seguenti funzionalità sono state aggiunte come parte di beta01 (tutte le funzionalità qui riguardano solo le modifiche sul lato host senza modifiche all'API):

  • La barra di navigazione mobile continuerà a essere visualizzata anche quando un utente si trova in una schermata di selezione basata su mappa in PlaceListNavigationTemplate, RoutePreviewNavigationTemplate e MapTemplate. Per farlo, puoi aggiornare le informazioni di navigazione tramite NavigationManager.updateTrip().
  • Attiva il pulsante di azione con FLAG_DEFAULT per attivare un'animazione di timeout. Per impostazione predefinita, questo pulsante verrà selezionato dopo il timeout. ([API 5 - All Templates])
  • Il sottotitolo Row non viene troncato quando l'auto è parcheggiata, ma troncato a 2 righe durante la guida. ([API 5 - All Templates])
  • Stato disattivato per Action, Toggle, Row ([API 5 - All Templates])

Modifiche alle API

  • Rilascia i vincoli nell'elenco MapTemplate per supportare gli elenchi selezionabili (I961ed)
  • Rimuovi il vincolo per le azioni intestazione per consentire le icone personalizzate. (Iad28f).
  • Aggiungi un vincolo setOnClickListenerAllowed() a ActionsConstraints. Dove è stato consentito a Action di impostare OnClickDelegate() su azioni tranne i tipi di icone standard. (TYPE_APP_ICON, TYPE_BACK e TYPE_PAN) (I3c745)

Correzioni di bug

Versione 1.3.0-alpha01

27 luglio 2022

androidx.car.app:app:1.3.0-alpha01, androidx.car.app:app-projected:1.3.0-alpha01, androidx.car.app:app-automotive:1.3.0-alpha01 e androidx.car.app:app-testing:1.3.0-alpha01 vengono rilasciati. La versione 1.3.0-alpha01 contiene questi commit.

Le funzionalità annotate con livello API 5 sono compatibili con Android Auto 7.9 e versioni successive.

Nuove funzionalità

  • Livello API 5: nuovo MapTemplate che può essere utilizzato dalle app di navigazione per visualizzare il riquadro o l'elenco dei contenuti insieme a una mappa (If5826, If44b8)
  • Livello API 5: nuova API CarAudioRecord per consentire la registrazione dell'input audio tramite il microfono del veicolo host (I5e71a)
  • Livello API 5: nuova API SuggestionManager per consentire alle app di fornire suggerimenti all'host (I5c103)
  • Livello API 5: nuova API Alert da mostrare nelle notifiche di contesto su NavigationTemplate (I163a7, I5ad70)
  • Livello API 5: nuovi componenti Header e MapController per facilitare il riutilizzo tra i modelli (If5826)
  • Aggiunta androidx.car.app.category.POI come categoria per l'attivazione delle app PDI (e androidx.car.app.category.PARKING e androidx.car.app.category.CHARGING deprecate) (I59da1)

Modifiche alle API

  • Livello API 5: nuovo metodo onClick nell'interfaccia SurfaceCallback per consentire l'interattività del tocco sulla mappa (Ia9777)
  • Livello API 5: nuovi flag Action.FLAG_IS_PERSISTENT e Action.FLAG_DEFAULT per descrivere i Action (I96318, I5ad70)
  • Livello API 5: nuovo stato abilitato/disattivato per i componenti Action, Row e Toggle (supporto host a partire dalla release 1.3.0-beta01 della libreria) (Id8a09)
  • Livello API 5: scegli il nuovo componente Header tramite setHeader su PlaceListNavigationTemplate.Builder e RoutePreviewNavigationTemplate.Builder, ritirando i metodi setTitle e setHeaderAction esistenti (I30e6a)
  • Livello API 5: nuovo metodo setOnContentRefreshListner in PlaceListMapTemplate.Builder e PlaceListNavigationTemplate.Builder da utilizzare con le implementazioni della nuova interfaccia OnContentRefreshListner.
  • Livello API 5: nuovi setTripText e setTripIcon sulla TravelEstimate.Builder per personalizzare la scheda della stima di viaggio (Idcc6d, Ic620d)
  • Aggiungi il supporto per CarIconSpan nel titolo di PaneTemplate (Ia1ee0)
  • Aggiungi il supporto di CarIconSpan nel titolo e nel testo di un Row (Ic1e3c)
  • Ora le mappe ActionStrip possono avere fino a quattro azioni (If3522)
  • Aggiorna il livello API Car App a 5 (I26b8e)
  • Intestazioni/titoli sono ora facoltativi per PlaceListMapTemplate, PlaceListNavigationTemplate, RoutePreviewNavigationTemplate, GridTemplate, ListTemplate, LongMessageTemplate, MessageTemplate, PaneTemplate e SignInTemplate (I2078d, Icadde)

Correzioni di bug

  • PaneTemplate regole di dimensionamento delle immagini aggiornate in modo che diventino un riquadro di delimitazione quadrato (Idd72e)
  • È stata corretta un'eccezione che si verificava se lo stack delle schermate viene modificato dopo il giorno State.DESTROYED. (I3c8eb)
  • È stato aggiunto un controllo null per il recupero dell'icona dell'app (I3f710)
  • Aggiorna l'API Car Hardware per utilizzare STATUS_UNKNOWN anziché STATUS_UNAVAILABLE per impostazione predefinita (Ic9444)
  • Controlla se il display esiste prima di creare la piattaforma (Ice027a)
  • Correggi CarValue.equals() bug che riguarda STATUS_UNIMPLEMENTED (I24451)

Versione 1.2

Versione 1.2.0

9 novembre 2022

androidx.car.app:app-*:1.2.0 viene rilasciato. La versione 1.2.0 contiene questi commit.

  • Questa è una release di stabilizzazione e non sono state apportate modifiche rispetto alla versione 1.2.0-rc01.

Versione 1.2.0-rc01

23 marzo 2022

androidx.car.app:app-*:1.2.0-rc01 viene rilasciato. La versione 1.2.0-rc01 contiene questi commit.

  • Questa è una release di stabilizzazione e non vengono apportate modifiche all'API rispetto a v1.2.0-beta02. Sono state aggiunte nuove funzionalità sperimentali (livello API 5) destinate alle future release di Android Auto e Android Automotive.

Correzioni di bug

  • È stata corretta un'eccezione che si verificava se lo stack delle schermate viene modificato dopo il giorno State.DESTROYED. (I3c8eb)
  • L'API CarSensors è stata aggiornata per indicare che non sono implementate per AAOS (Idd57b)
  • È stato aggiornato PlaceListMapTempalte.Builder#setCurrentLocationEnabled per indicare che ACCESS_COARSE_LOCATION sarebbe sufficiente per la funzionalità (I510c2)
  • Numero di uscita reso facoltativo per i tipi di manovra rotatoria con angolo (Ife7d1)

Versione 1.2.0-beta02

26 gennaio 2022

androidx.car.app:app-*:1.2.0-beta02 viene rilasciato. La versione 1.2.0-beta02 contiene questi commit.

Le app per auto create con questa versione della raccolta che hanno come target la piattaforma Android Automotive OS possono ora essere pubblicate sul canale di test aperto del Play Store. Per ulteriori dettagli, consulta la guida allo sviluppo.

Le funzionalità annotate con livello API 4 e inferiore sono compatibili sia con Android Auto 7.2 e versioni successive sia con la nuova piattaforma Android Automotive OS. Per le avvertenze, consulta la sezione Known Issues di seguito.

Modifiche alle API

  • API sperimentale setOnContentRefreshListener aggiunta ai modelli di PDI (I6bf22)

Correzioni di bug

  • È stata corretta una perdita di memoria in CarAppService durante lo svincolo dell'host dell'auto. (I5c9ca, b/203594731).
  • È stato aggiornato il file javadoc di CarAppActivity per includere i requisiti per la modalità di lancio singleTask (Id2f95)
  • Riduce il glitch visivo al curriculum. (Iff7e0).

Problemi noti

  • La mappa ActionStrip in PlaceListNavigationTemplate e RoutePreviewNavigateTemplate inizierà a essere disponibile nelle prossime release di Android Auto e Android Automotive OS.

Versione 1.2.0-alpha02

15 dicembre 2021

androidx.car.app:app-*:1.2.0-alpha02 viene rilasciato. La versione 1.2.0-alpha02 contiene questi commit.

È stato eseguito l'upgrade delle funzionalità annotate con il livello API 4 da sperimentali a stabile, incluse le mappe ActionStrip in PlaceListNavigationTemplate e RoutePreviewNavigateTemplate, l'immagine CarIcon in Pane, QRCodeSignInMethod e la possibilità di impostare suggerimenti di rendering (ad esempio, flag) in Action.

Nuove funzionalità

  • In Android Auto 7.1 e versioni successive, il limite di elementi per Pane è stato aumentato da 2 a 4.

Modifiche alle API

  • È stato aggiunto un metodo toString() sperimentale a CarUnit(I36a3b)

Correzioni di bug

  • Risolto un arresto anomalo che si è verificato in CarAppPermissionActivity se il callback non era attivo (If9823)
  • Limite dell'elenco predefinito di Pane modificato in 4 (I0068b)

Versione 1.2.0-alpha01

3 novembre 2021

androidx.car.app:app-*:1.2.0-alpha01 viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.

Tutte le nuove funzionalità di v1.2.0 (API 4 e versioni successive) sono attualmente sperimentali e hanno come target le future release di Android Auto e Android Automotive. Per ulteriori dettagli, consulta la guida allo sviluppo.

Modifiche alle API

  • Sperimentale per l'API AutomotiveCarInfo. (Ia13e5).
  • Aggiunto il livello 4 dell'API Car App Library (I2a2e7)
  • Livello API 4: è stato aggiunto il supporto per l'impostazione di un CarIcon in Pane (Ifcc12)
  • Livello API 4: aggiunto il metodo di accesso con codice QR (Ib623e)
  • Livello API 4: set/getFlags aggiunto a Action (Ic03ab)
  • Livello API 4: aggiunto il supporto per la panoramica e lo zoom in PlaceListNavigationTemplate e RoutePreviewNavigationTemplate (I9d8a3)

Correzioni di bug

  • Livello API 4: aggiungi un meccanismo per consentire alle app di inviare aggiornamenti di posizione all'host dell'auto (I3bad3)
  • Risolvi un problema per cui la logica di convalida dell'host non trovava correttamente l'autorizzazione TEMPLATE_RENDERER (I62618)

Versione 1.1.0

Versione 1.1.0

15 dicembre 2021

androidx.car.app:app-*:1.1.0 viene rilasciato. La versione 1.1.0 contiene questi commit.

Questa è una release di stabilizzazione e non ci sono modifiche rispetto a v1.1.0-rc01. Consulta anche le note di rilascio di v1.2.0-alpha02 per ulteriori dettagli sulle nuove funzionalità della raccolta di app per auto.

Modifiche importanti dalla versione 1.0.0

  • Livello API 2: SignInTemplate e LongMessageTemplate utilizzabili per i flussi di accesso quando il veicolo è parcheggiato
  • Livello API 2: supporto dell'interattività delle mappe all'interno di NavigationTemplate
  • Livello API 2: supporto di testo di più lunghezze per consentire alle app di fornire più versioni della stringa per la visualizzazione a seconda delle dimensioni dello schermo dell'auto.
  • Livello API 3: CarHardwareManager che può essere utilizzata per eseguire query sui dati hardware del veicolo, come modello e marca, livelli di carburante e altri sensori.

Versione 1.1.0-rc01

3 novembre 2021

androidx.car.app:app-*:1.1.0-rc01 viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.

Questa è una release di stabilizzazione e non vengono apportate modifiche all'API rispetto a v1.1.0-beta01. Sono state aggiunte nuove funzionalità sperimentali (livello API 4) destinate alle future release di Android Auto. Per ulteriori dettagli sulle API sperimentali, consulta le note di rilascio di v1.2.0-alpha01.

Versione 1.1.0-beta01

1° settembre 2021

androidx.car.app:app-*:1.1.0-beta01 viene rilasciato. La versione 1.1.0-beta01 contiene questi commit.

Tutte le funzionalità di v1.1.0 (API 2 e versioni successive) sono completamente compatibili con Android Auto 6.7 e versioni successive. Per ulteriori dettagli, consulta la guida allo sviluppo.

Modifiche alle API

  • Manager rimossa come interfaccia pubblica (Ie381b)
  • Aggiunta la possibilità di impostare uno sfondo con brand personalizzato per la richiesta di autorizzazione (I74b76)
  • Aggiunto ScreenManager.getStackSize (I0b16a)
  • Rimosso il costruttore ScreenController che richiede esplicitamente TestCarContext (Iefebc)

Correzioni di bug

  • Aggiunto controllo del livello API durante la creazione di CarHardwareManager (I48f9b)
  • Sono stati aggiunti controlli per l'utilizzo non valido di CarSpan nell'API (I65ae6)
  • Risolto il problema per cui se un oggetto Screen viene contrassegnato come completato durante la creazione, lasciava l'elenco in stato non funzionante (I81b13)
  • Risolvi un problema per cui CarNotificationManager.notify registrava un errore per AutomotiveOS se ci fossero azioni con icone in CarAppExtender (I3633d)
  • Aggiunto un metodo di handshake per app e host per stabilire una versione API (I7d6f8)

Versione 1.1.0-alpha02

21 luglio 2021

androidx.car.app:app-*:1.1.0-alpha02 viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Livello API 3: è stato aggiunto un CarHardwareManager che può essere utilizzato per eseguire query sui dati hardware del veicolo, come modello e marca, livelli di carburante e altri sensori. Questa funzionalità è attualmente disponibile soltanto per Android Auto 6.7 e versioni successive del canale di test aperto. Per eseguire il test in un ambiente desktop è necessaria una nuova versione di Desktop Head Unit, che verrà rilasciata separatamente. Continua a seguirci nella pagina Testare le app Android per le auto per avere informazioni dettagliate sulle tempistiche di disponibilità della nuova versione.
  • Segui la guida allo sviluppo e il riferimento della libreria per ulteriori dettagli e linee guida sulla progettazione su come usare queste funzionalità negli host per auto compatibili con il livello API 3.

Modifiche alle API

  • Metodi del ciclo di vita di SessionController e ScreenController consolidati in un unico metodo moveToState (I1ed00)
  • Aggiunto CarContext#getHostInfo() (I8977e)
  • Campi deprecati rimossi. (I67168)
  • Sono stati aggiornati SessionController e ScreenController per esporre direttamente i costruttori (Iabf22)
  • PinSignInMethod.Builder e ProviderSignInMethod.Builder (I9f0cb) rimossi
  • Aggiunta "setCarAppResult()" per attivare l'utilizzo di app basate su modelli "per i risultati" in AAOS (I37741)
  • CarHardware interfacce annotate con @MainThread. (Ib2f85).
  • Rinominato OnCarDataListener in OnCarDataAvailableListener (I518ca)
  • Sono stati aggiornati i nomi dei metodi CarInfo, Speed, Mileage e javadoc. (I86672)
  • Rinominato Toll in TollCard. (I3e7c8).
  • È stato rimosso il valore PinSignInMethod.getPin deprecato, che è stato sostituito da PinSignInMethod.getPinCode (I996ce)
  • OnInputCompletedListener rimosso (sostituito con InputCallback). (Ib5be1)
  • PinSignInMethod modificato in CharSequence anziché String (I275d5)

Correzioni di bug

  • Correzioni Javadoc per l'hardware dell'auto. (I2abbc)

Contributi esterni

Problemi noti

  • In SignInTemplate, l'utilizzo di InputSignInMethod potrebbe generare un NullPointerException nell'host dell'auto. Questo problema verrà risolto nella prossima release della raccolta. Per risolvere il problema, includi questa riga nella configurazione di Proguard dell'app: -keep class androidx.car.app.model.signin.InputSignInMethod { *; }

Versione 1.1.0-alpha01

16 giugno 2021

androidx.car.app:app:1.1.0-alpha01, androidx.car.app:app-automotive:1.1.0-alpha01 e androidx.car.app:app-testing:1.1.0-alpha01 vengono rilasciati. La versione 1.1.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Livello API 2: nuovi SignInTemplate e LongMessageTemplate che possono essere utilizzati per i flussi di accesso quando il veicolo è parcheggiato.
  • Livello API 2: nuovo supporto dell'interattività delle mappe all'interno di NavigationTemplate
  • Livello API 2: nuovo supporto di testo a più lunghezze per consentire alle app di fornire più versioni della stringa per la visualizzazione a seconda delle dimensioni dello schermo dell'auto.
  • Segui la guida allo sviluppo e la libreria Javadoc per ulteriori dettagli e linee guida di progettazione su come usare queste funzionalità negli host di auto compatibili con il livello API 2.

Modifiche alle API

  • Tutti i metodi di interfaccia di *Callback sono stati impostati come predefiniti e sono stati rinominati OnRequestPermissionsCallback -> OnRequestPermissionsListener (Ib3ec9)
  • Sono state aggiornate le classi androidx.car.app.hardware per rimuovere gli strumenti per la creazione e le classi di parametri non necessari. (I67beb)
  • Sono state aggiunte classi androidx.car.app.hardware per l'accesso a dati specifici dell'auto, come carburante, batteria e velocità. (Iff3c9).
  • Aggiunto il supporto per ActionStrip su MessageTemplate (Ida657)
  • Elemento setLoading aggiunto alla raccolta MessageTemplate. (I2a4b5).
  • Rinominato ConnectionToCar in CarConnection (Ife9bd)
  • NavigationTemplate modificato per restituire un PanModeDelegate esplicito (I13877)
  • Aggiornamento dell'ordine dei parametri per CarContext.requestPermissions (Ib890a)
  • Chiave dei metadati aggiornata per definire il livello minimo dell'API dell'auto su androidx.car.api.minCarApiLevel (Ib0d41)
  • È stata creata un'API che consente di osservare lo stato della connessione dell'auto (Ifc935)
  • È stato aggiunto il supporto dell'impostazione di un pulsante di attivazione/disattivazione per Action e il tipo di modalità panoramica Action (Ica6af)
  • Creazione di CarNotificationManager per supportare l'invio di notifiche in auto (I10d7a)
  • È stato aggiunto ConstraintManager per aver fornito i limiti relativi agli elenchi dall'host (I8690e)
  • Aggiunta della modalità panoramica e dell'API Map Action Strip in NavigationTemplate (I77aa6)
  • Aggiunta l'API panoramica e zoom in SurfaceCallback per le app di navigazione (Id5e9d)
  • CarAppApiLevel aggiornato a 2 (Ic1540)
  • Aggiunta la possibilità di richiedere autorizzazioni da un CarAppService (I5421e)
  • Aggiunta l'annotazione RequiresCarApi(2) all'API multi-testo (Iacb62)
  • Sono state consentite più varianti di testo nel titolo del modello a metà elenco (Ib8df7)
  • Nuovo LongMessageTemplate aggiunto (richiede il livello 2 dell'API Car) (Ic5cee)

Correzioni di bug

  • Aggiornati i requisiti per le dimensioni delle immagini per tenere conto degli schermi delle auto più grandi (I116dc)
  • Non consentita l'aggiunta di più di due azioni nel corpo del modello (I32157)
  • È stato verificato che tutte le creazioni di PendingIntent nella libreria di app per auto abbiano impostato dei flag. (If84fe, b/186394900)
  • Javadoc aggiornato per consentire le modifiche al testo di Row durante gli aggiornamenti (If3f9c)
  • androidx.activity:activity:1.2.0 ora è una dipendenza dell'API (Id1cb9)
  • Rendere SignInTemplate e LongMessageTemplate per richiedere azioni di solo parcheggio nel corpo e aggiornare la documentazione per indicare che verranno mostrate solo quando l'auto è parcheggiata (Iddaa9)
  • Correzione di un'eccezione che si verificava quando si apriva un Screen all'avvio (Ifcf40, b/184664896)
  • Colore del testo personalizzato consentito in ForegroundCarColorSpan (I69e59)
  • Risolto il problema per cui ON_DESTROY su un Session viene osservato dopo ON_DESTROY di Screen (I52e01, b/183696617)
  • Javadoc aggiornato attivo quando è consentito impostare il tempo rimanente di un TravelEstimate su un orario sconosciuto. (I99610, b/183632456)
  • Aggiornamento di Action per supportare ForegroundColorSpan nel titolo e qualsiasi colore di sfondo personalizzato (I578e4)
  • Non eseguire NavigationManagerCallback#onStopNavigation se il callback viene cancellato prima dell'esecuzione dell'esecutore (I7fc5e, b/181143772)
  • Risolto un problema che richiedeva all'app di assumere esplicitamente una dipendenza da lifecycle-common-java8 (I8b8c8)

Problemi noti

  • In SignInTemplate, la tastiera sullo schermo mostra un'icona "Cerca" anziché un'icona "Invio" quando l'utente vuole confermare l'input. Per risolvere il problema, gli utenti possono accedere alla tastiera del telefono che si attiva quando il campo di immissione è attivo.
  • In Android Auto versione 6.5, i callback per panoramica e zoom in SurfaceCallback potrebbero essere richiamati erroneamente per alcuni gesti tattili.

Test dell'app per auto versione 1.0.0

Versione 1.0.0-alpha01

24 marzo 2021

androidx.car.app:app-testing:1.0.0-alpha01 viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Questa è la prima release di Jetpack della libreria di test di origine chiusa in precedenza. Consulta i nostri esempi per scoprire come utilizzare questa libreria nei tuoi test.

Nuove funzionalità

  • I controller per le classi dei modelli sono stati rimossi. I getter dei modelli fanno ora parte della piattaforma API pubblica che consente di convalidare i valori impostati nei builder.
  • Il valore CarAppServiceController precedente è stato sostituito dal nuovo SessionController per la logica di test relativa alla durata della connessione agli hotspot.

Versione 1.0.0

Versione 1.0.0

21 aprile 2021

androidx.car.app:app:1.0.0 viene rilasciato. La versione 1.0.0 contiene questi commit.

Funzionalità principali della versione 1.0.0

  • All'inizio di aprile abbiamo annunciato che le app possono iniziare a essere pubblicate sul canale di produzione utilizzando androidx.car.app:app:1.0.0-rc01. L'app Car App Library v1.0.0 è ora stabile ed è completamente compatibile con Android Auto 6.1 e versioni successive.
  • Segui la guida allo sviluppo per avere informazioni dettagliate su come creare app di navigazione, parcheggio e ricarica per Android Auto utilizzando la raccolta.

Correzioni di bug

  • Correzione di un'eccezione che si verificava quando si apriva un Screen all'avvio (70aae1, b/184664896)
  • Risolto il problema per cui ON_DESTROY su un Session viene osservato dopo ON_DESTROY di Screen (0ceecb, b/183696617)

Versione 1.0.0-rc01

24 marzo 2021

androidx.car.app:app:1.0.0-rc01 viene rilasciato. La versione 1.0.0-rc01 contiene questi commit.

Correzioni di bug

  • È stato corretto un bug relativo alle condizioni di gara per cui NavigationManagerCallback#onStopNavigation veniva chiamato dopo l'annullamento del callback. Questo accadeva se il callback è stato cancellato prima dell'effettiva esecuzione dell'esecutore di callback (I7fc5e, b/181143772)
  • Risolto un problema che richiedeva all'app di dipendere esplicitamente da lifecycle-common-java8 (I8b8c8)
  • Risolto il problema NullPointerException generato quando l'app riceve una chiamata stopNavigation quando ha già rimosso un callback (Ib8b89, b/181143772)
  • Miglioramenti per non inviare chiamate all'app se il relativo ciclo di vita non è almeno in stato CREATED (I86965, b/179800224, b/177921120)
  • Risolto il problema per cui generava un'API minima non valida specificata nel file manifest dell'app, causando un errore ANR sull'host. (Iffedd, b/174231592)

Versione 1.0.0-beta01

24 febbraio 2021

androidx.car.app:app:1.0.0-beta01 viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.

Questa è la prima release Jetpack della libreria di codice sorgente chiusa in precedenza ed è compatibile con Android Auto 6.1 o versioni successive. Segui la guida allo sviluppo per avere informazioni dettagliate su come creare app per auto utilizzando la libreria.

Nuove funzionalità

Correzioni di bug

  • Risolto il problema per cui l'impostazione Screen errata viene ripresa quando le schermate pop vengono visualizzate in sequenza. (b/177590791)