App per auto

Crea app basate su modelli per Android Auto e il sistema operativo Android Automotive.
Aggiornamento più recente Release stabile Candidato di rilascio Versione beta Versione alpha
13 dicembre 2023 1.2.0 1.4.0-rc02 - -

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 delle build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. 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.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

Rilasciata androidx.car.app:app-*:1.4.0-rc01 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 quello in versione beta01, ma riduce a 33 il requisito compileSdk.

Correzioni di bug

  • Risolvi 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 in stato di sviluppo. 1.4-beta02 risolverà questo problema. In alternativa, puoi aggiungere android.suppressUnsupportedCompileSdk=34 al file settings.gradle del 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 versione Alpha02 è stata pensata per preparare una versione futura della versione beta01.

Nuove funzionalità

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

Modifiche alle API

  • Aggiungi campi multimediali a CarMessage (I5aaf6)
  • Aggiunge azioni personalizzate a ConversationItem nella libreria delle app per auto (Ie5ed6)
  • Aggiungi extra per indicare che un elemento multimediale viene riprodotto con un formato audio immersivo e mostrarne il logo del formato dei contenuti (Icb5bb)
  • Aggiungi il nuovo tipo di azione, l'API ActionsConstraints per supportare il pulsante Scrivi. (I31661)
  • set/getTemplate creato come set/get ContentTemplate (Ica036)
  • Il parametro del modello ora sarà @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 delle schede (I96932)
  • Aggiungi la proprietà ItemImageShape a GridTemplate (Ibf431)
  • Aggiungi la proprietà ItemSize a GridTemplate, che controlla il dimensionamento 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 di schermate corrente. (I48107)
  • Aggiunge la categoria per le app meteo alla libreria di app per auto (I2be44)
  • Aggiunge la categoria per le app di chiamata alla libreria di app per auto (Icab33)
  • GridItem.Builder#setBadge() sostituito con metodi setImage() con sovraccarico (Id2000)
  • Aggiungi la proprietà dell'icona al badge (I629b2)
  • Aggiungi il metodo per impostare il colore di sfondo del badge a punti (I6411c)
  • Aggiungi la proprietà Badge a GridItem, consentendo la visualizzazione di un badge sopra un'immagine 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 libreria di app auto (Id0191)
  • Aggiunge azioni di primo livello a ListTemplate nella libreria di app auto (I9efab)
  • Aggiungi extra per collegare il sottotitolo o la descrizione di un elemento multimediale ad altri elementi multimediali (Ic84bf)
  • Aggiorna il livello dell'API per le azioni riga al livello 6. (Ie0a69)
  • Aggiungere i callback di messaggistica ad A4C (Ie3986)

Correzioni di bug

  • Aggiungi riferimenti a documenti 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, non vuoto (Iafc51)
  • Aggiungi annotazioni @Keep a ConversationItem campi (I5d250)
  • Aggiorna i documenti Java per la decorazione di riga 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. Nessuna modifica importante.

Versione 1.3.0-beta01

7 settembre 2022

Vengono rilasciati 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. 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 della 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, aggiorna le informazioni di navigazione tramite NavigationManager.updateTrip().
  • Attiva il pulsante di azione con FLAG_DEFAULT per generare un'animazione di timeout. Per impostazione predefinita, verrà fatto clic su questo pulsante dopo il timeout. ([API 5 - All Templates])
  • Il sottotitolo Row non viene troncato quando l'auto viene parcheggiata, ma a 2 righe durante la guida. ([API 5 - All Templates])
  • Stato disattivato del supporto 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

Vengono rilasciati 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. 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 elencare i 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 visualizzare nelle notifiche contestuali su NavigationTemplate (I163a7, I5ad70)
  • Livello API 5: nuovi componenti Header e MapController per facilitare il riutilizzo tra i modelli (If5826)
  • androidx.car.app.category.POI aggiunta 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 Action (I96318, I5ad70)
  • Livello API 5: nuovo stato attivato/disattivato per i componenti Action, Row e Toggle (supporto host della libreria 1.3.0-beta01) (Id8a09)
  • Livello API 5: favorisci 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: nuove setTripText e setTripIcon nella TravelEstimate.Builder per personalizzare la scheda per la stima dei viaggi (Idcc6d, Ic620d)
  • Aggiungi il supporto per CarIconSpan nel titolo di PaneTemplate (Ia1ee0)
  • Aggiungi il supporto per 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)
  • Le intestazioni/i titoli sono ora facoltativi per PlaceListMapTemplate, PlaceListNavigationTemplate, RoutePreviewNavigationTemplate, GridTemplate, ListTemplate, LongMessageTemplate, MessageTemplate, PaneTemplate e SignInTemplate (I2078d, Icadde)

Correzioni di bug

  • PaneTemplate regole di ridimensionamento delle immagini aggiornate come riquadro di delimitazione quadrato (Idd72e)
  • Risolto un'eccezione che si verificava se lo stack di schermate viene modificato dopo State.DESTROYED. (I3c8eb)
  • È stato aggiunto un controllo di 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 è presente un display prima di creare la superficie (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 ci sono modifiche rispetto alla v1.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 sono state 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

  • Risolto un'eccezione che si verificava se lo stack di schermate viene modificato dopo State.DESTROYED. (I3c8eb)
  • È stata aggiornata l'API CarSensors 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 con 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 o inferiore sono compatibili con Android Auto 7.2 e versioni successive e con la nuova piattaforma Android Automotive OS. Per le avvertenze, consulta la sezione Known Issues di seguito.

Modifiche alle API

  • Aggiunta dell'API setOnContentRefreshListener sperimentale ai modelli di PDI (I6bf22)

Correzioni di bug

  • È stata corretta una perdita di memoria in CarAppService quando l'host dell'auto si svincola. (I5c9ca, b/203594731)
  • È stato aggiornato il file javadoc CarAppActivity per includere i requisiti per la modalità di lancio singleTask (Id2f95)
  • Riduce il problema visivo al momento del ripristino. (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, inclusi i ActionStrip delle mappe in PlaceListNavigationTemplate e RoutePreviewNavigateTemplate, l'immagine CarIcon in Pane, l'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 più disponibile (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 del sistema operativo Android Auto e Android Automotive. Per ulteriori dettagli, consulta la guida allo sviluppo.

Modifiche alle API

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

Correzioni di bug

  • Livello API 4: aggiungi un meccanismo per consentire alle app di inviare aggiornamenti della 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. Leggi anche le note di rilascio di v1.2.0-alpha02 per avere ulteriori informazioni sulle nuove funzionalità della raccolta di app per auto.

Modifiche importanti dalla versione 1.0.0

  • Livello API 2: SignInTemplate e LongMessageTemplate che possono essere utilizzati 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 a 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: CarHardwareManagerper 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 sono state 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. Consulta le note di rilascio di v1.2.0-alpha01 per ulteriori dettagli sulle API sperimentali.

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 o 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

  • È stato aggiunto il 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 una Screen viene contrassegnata come completata durante la creazione, lasciava lo stack in uno stato non funzionante (I81b13)
  • Risolvi un problema per cui CarNotificationManager.notify registrava un errore per AutomotiveOS se erano presenti azioni con icone in CarAppExtender (I3633d)
  • Aggiunto un metodo di handshake per app e host per stabilire una versione dell'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, i livelli di carburante e altri sensori. Al momento questa funzionalità è disponibile solo per Android Auto 6.7 e versioni successive nel 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 sulla data 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 utilizzare queste funzionalità negli host di auto compatibili con il livello API 3.

Modifiche alle API

  • Metodi consolidati del ciclo di vita di SessionController e ScreenController in un unico metodo moveToState (I1ed00)
  • Aggiunta di CarContext#getHostInfo() (I8977e)
  • Campi deprecati rimossi. (I67168)
  • Sono stati aggiornati SessionController e ScreenController per esporre direttamente i costruttori (Iabf22)
  • PinSignInMethod.Builder e ProviderSignInMethod.Builder rimosse (I9f0cb)
  • Aggiunta di "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)
  • Nomi dei metodi CarInfo, Speed, Mileage e javadoc aggiornati. (I86672)
  • Toll rinominato in TollCard. (I3e7c8)
  • È stato rimosso l'elemento 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)

Contributo esterno

Problemi noti

  • In SignInTemplate, l'utilizzo di InputSignInMethod può comportare la visualizzazione di 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: nuove SignInTemplate e LongMessageTemplate che possono essere utilizzate per i flussi di accesso quando il veicolo è parcheggiato.
  • Livello API 2: supporto della nuova interattività delle mappe all'interno di NavigationTemplate
  • Livello API 2: nuovo supporto del 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 il Javadoc della libreria per ulteriori dettagli e linee guida sulla progettazione su come utilizzare 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 sviluppatori 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 ActionStrip su MessageTemplate (Ida657)
  • Elemento setLoading aggiunto a MessageTemplate. (I2a4b5)
  • Rinominato ConnectionToCar in CarConnection (Ife9bd)
  • È stato modificato il valore NavigationTemplate in modo da restituire un PanModeDelegate esplicito (I13877)
  • Ordine dei parametri aggiornato per CarContext.requestPermissions (Ib890a)
  • Chiave dei metadati aggiornata per definire il livello minimo di API dell'auto su androidx.car.api.minCarApiLevel (Ib0d41)
  • È stata creata un'API che consente di osservare lo stato della connessione auto (Ifc935)
  • Aggiunto il supporto per l'impostazione di un pulsante di attivazione/disattivazione per un Action e aggiunto il tipo di modalità panoramica Action (Ica6af)
  • Creazione di CarNotificationManager per supportare l'invio di notifiche in auto (I10d7a)
  • Aggiunto ConstraintManager per specificare i limiti per gli elenchi dall'host (I8690e)
  • Aggiunta della modalità panoramica e dell'API Map Action Strip in NavigationTemplate (I77aa6)
  • Aggiunta dell'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)
  • Più varianti di testo consentite nel titolo del modello del semi-elenco (Ib8df7)
  • Aggiunto nuovo LongMessageTemplate (richiede il livello API Auto 2) (Ic5cee)

Correzioni di bug

  • Aggiornati i requisiti per le dimensioni delle immagini per tenere conto degli schermi delle auto più grandi (I116dc)
  • Aggiunta di più di due azioni nei corpi del modello non consentita (I32157)
  • È stata completata la creazione di PendingIntent nei flag del set della libreria di app per auto. (If84fe, b/186394900)
  • javadoc aggiornato per consentire le modifiche al testo di Row come aggiornamenti (If3f9c)
  • androidx.activity:activity:1.2.0 è ora una dipendenza dell'API (Id1cb9)
  • Sono stati effettuati SignInTemplate e LongMessageTemplate per richiedere azioni solo parcheggiate nel corpo e aggiornare la documentazione per indicare che verranno mostrate solo quando l'auto è parcheggiata (Iddaa9)
  • Risolto 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 Session viene osservato dopo ON_DESTROY di Screen (I52e01, b/183696617)
  • È consentito aggiornare javadoc quando si imposta il tempo rimanente di un TravelEstimate su un orario sconosciuto. (I99610, b/183632456)
  • Aggiornamento di Action per supportare ForegroundColorSpan nel titolo e in 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 6.5, le richiamate per la panoramica e lo zoom in SurfaceCallback potrebbero essere attivate erroneamente per alcuni gesti tattili.

Test 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 su come utilizzare questa libreria nei tuoi test.

Nuove funzionalità

  • I controller per le classi dei modelli sono stati rimossi. Ora i getter del modello fanno parte della piattaforma API pubblica che consente di convalidare i valori impostati negli strumenti di creazione.
  • Il CarAppServiceController precedente è stato sostituito dal nuovo SessionController per la logica di test relativa alla durata della connessione agli hots.

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 è possibile iniziare la pubblicazione delle app sul canale di produzione utilizzando androidx.car.app:app:1.0.0-rc01. 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 libreria.

Correzioni di bug

  • Risolto un'eccezione che si verificava quando si apriva un Screen durante l'avvio (70aae1, b/184664896)
  • Risolto il problema per cui ON_DESTROY su 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

  • Risolto un bug relativo alle condizioni di gara per cui NavigationManagerCallback#onStopNavigation veniva chiamato dopo la cancellazione del callback. Questo accade se il callback è stato cancellato prima che l'esecutore di callback fosse effettivamente eseguito (I7fc5e, b/181143772)
  • Risolto un problema che richiedeva all'app di assumere esplicitamente una dipendenza da lifecycle-common-java8 (I8b8c8)
  • Risolto il problema di un 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 suo ciclo di vita non è almeno in stato CREATED (I86965, b/179800224, b/177921120)
  • Risolto il problema per cui veniva generata un'API minima non valida specificata nel 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 di 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'elemento Screen sbagliato viene ripreso quando si aprivano le schermate in sequenza. (b/177590791)