App per auto

Crea app basate su modelli per Android Auto e Android Automotive OS.
Aggiornamento più recente Release stabile Candidato per l'uscita Versione beta Release alpha
26 giugno 2024 1.4.0 - 1.7.0-beta01 -

Dichiarazione delle dipendenze

Per aggiungere una dipendenza alla libreria di app per auto, devi aggiungere il repository Google Maven 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.4.0"

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

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

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

Kotlin

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

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

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

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

Per saperne di più sulle dipendenze, consulta Aggiungere dipendenze build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se scopri nuovi problemi o hai idee per migliorare questa raccolta. 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 stella.

Crea un nuovo numero

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Versione 1.7

Versione 1.7.0-beta01

26 giugno 2024

Viene rilasciato androidx.car.app:app-*:1.7.0-beta01. La versione 1.7.0-beta01 contiene questi commit. Le funzionalità sono le stesse di quelle pubblicate in alpha01 e vengono ripetute di seguito:

Nuove funzionalità

  • Mappa con contenuti: nuovo modello, Canvas mappa più un modello di contenuti, che per ora può essere Elenco / Griglia / Riquadro / Messaggio.
    • RoutePreview, PlaceListNavigation e MapTemplate sono deprecati. I modelli continueranno a funzionare così come sono.
    • Le app di esempio sono state aggiornate in modo da mostrare l'utilizzo MapWithContentinvece dei modelli deprecati
  • Conversazione: nuove API per la visualizzazione delle conversazioni (messaggistica immediata, SMS) e della lettura dell'assistente in auto.
  • Dimensioni veicolo: nuova API per recuperare le misure relative ai veicoli (dati al momento presenti su AAOS).

Modifiche alle API

  • Aggiungi il tag @ExperimentalCarApi a MediaPlaybackTemplate.Builder. (Ic1957)
  • Aggiunge un nuovo SectionedItemTemplate in modalità sperimentale. (I5958a)
  • Presenta CarAppApiLevel 8 (I3fa22)
  • Aggiunge MediaPlaybackTemplate per la visualizzazione di contenuti durante la riproduzione di contenuti multimediali nella Raccolta di app per auto. (I3c10d).
  • È stata aggiunta una nuova API per consentire alle app di rilevare se il sistema supporta l'audio in background durante la guida (I0f868)

Correzioni di bug

  • Corregge alcune istanze di perdite di memoria e arresti anomali nel codice client CAL e nell'app di esempio di navigazione CAL. (I55e04)
  • Sostituisci requireNotNull instances nel metodo onDestroy di BaseCarAppActivity con controlli se null per evitare arresti anomali. (Iec676).

Versione 1.7.0-alpha02

17 aprile 2024

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

Nuove funzionalità

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

Modifiche alle API

  • Ritira i vecchi MapTemplate, RoutePreviewNavigationTemplate, PlaceListNavigationTemplate e incoraggia l'utilizzo dei nuovi MapWithContentTemplate (Ib0a08)

Versione 1.7.0-alpha01

3 aprile 2024

Viene rilasciato androidx.car.app:app-*:1.7.0-alpha01. Abbiamo spostato lo schema di controllo delle versioni della libreria in modo che corrisponda alla versione CarApi attiva. In questo modo è possibile ridurre la confusione sullo schema di denominazione in base al feedback degli sviluppatori. Di conseguenza, salteremo le versioni 1.5 / 1.6, che passano direttamente alla 1.7. La versione 1.7.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Mappa con contenuto: nuovo modello denominato MapWithContent che supporta Elenco / Griglia / Riquadro / Messaggio come contenuto all'interno di una mappa.
    • I modelli di mappa RoutePreview, PlaceListNavigation sono stati ritirati.
    • Le app di esempio sono state aggiornate per mostrare le funzionalità dei modelli ritirati utilizzando MapWithContent.
  • Conversazione: nuove API per la visualizzazione delle conversazioni (messaggistica immediata, SMS) e della lettura dell'assistente in auto.
  • Dimensioni veicolo: nuova API per recuperare le misure relative ai veicoli (dati al momento presenti 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 alle 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 possibile impostare valori null. (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 e actionStrip (I7ae01)
  • Ritira title, headerAction, actionStrip in GridTemplate e aggiungi il supporto per Header (I41a9c)
  • Rimuovi il requisito del livello 7 per le API sperimentali: badge, GridTemplate getter/setter per dimensioni degli articoli e forma delle immagini, GridItem metodi per ottenere/impostare un badge. (ID71eb)
  • Ritira title, headerAction, actionStrip in PaneTemplate e aggiungi nuovo supporto Header (I23154)
  • Telemetria di Media Center cambiata da BroadcastReceiver a Azione personalizzata di navigazione. (I4185f)
  • Aggiunto il supporto dell'attributo Header in MessageTemplate. Ritiro del supporto per ActionStrip, headerAction e title. (Ie2de8)
  • Modificare la 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)
  • Aggiungi la funzionalità di analisi dei media center a MediaExtensions (I7ce28)
  • Aggiunta un'opzione per immagini molto piccole nelle 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

29 maggio 2024

Viene rilasciato androidx.car.app:app-*:1.4.0. La versione 1.4.0 è una promozione di 1.4.0-rc02.

Modifiche importanti dalla versione 1.3.0

  • Rendering della mappa sul quadro strumenti per le app di navigazione
  • Modello Nuova scheda per un migliore layout dell'app / usabilità
  • Supporto per i limiti delle attività adattive
  • Azioni secondarie sugli elementi dell'elenco

Versione 1.4.0-rc02

13 dicembre 2023

Viene rilasciato androidx.car.app:app-*:1.4.0-rc02. 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

Viene rilasciato androidx.car.app:app-*:1.4.0-beta02. La versione 1.4.0-beta02 contiene questi commit.. È quasi identico alla versione beta01, ma riduce il requisito di compileSdk a 33.

Correzioni di bug

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

Versione 1.4.0-beta01

9 agosto 2023

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

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

Nuove funzionalità

Modifiche alle API

  • Vedi alpha02

Versione 1.4.0-alpha02

26 luglio 2023

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

  • La versione Alpha02 è pensata per essere la preparazione a un'imminente release della versione beta01.

Nuove funzionalità

  • Rendering della mappa su Quadro strumenti supportato per le app di navigazione
  • Sono state aggiunte schede per le app per migliorare l'esperienza di layout
  • Aggiunta delle opzioni di rendering del modello di elenco / griglia
  • Sono state aggiunte nuove categorie per Meteo e Comunicazioni.
  • Sposta diverse API alla release successiva di CarApi 7

Modifiche alle API

  • Aggiungi campi multimediali a CarMessage (I5aaf6)
  • Aggiunge azioni personalizzate a ConversationItem nella Raccolta di app per auto (Ie5ed6)
  • Aggiungi extra per indicare che un elemento multimediale viene riprodotto in un formato audio immersivo e mostra il relativo logo del formato dei contenuti (Icb5bb)
  • Aggiungi un nuovo tipo di azione, 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 nella CAL 1.4 (I2cfcb)
  • Rimuove il tag @ExperimentalCarApi per TabTemplate (Ifcb82)
  • Rimuovere le annotazioni @ExperimentalCarApi dalle azioni e dalle decorazioni secondarie della riga (I8487e)
  • Aggiunge l'ID contenuto 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, che controlla il dimensionamento degli elementi della griglia in base a bucket relativamente piccoli, medi e grandi. (Icdb3b)
  • Consentire agli sviluppatori l'accesso all'API per ottenere una copia dell'attuale stack di schermate. (I48107)
  • Aggiunge la categoria per le app meteo alla raccolta di app per auto (I2be44)
  • Aggiunge la categoria per le app di chiamata alla Raccolta di app per auto (Icab33)
  • GridItem.Builder#setBadge() sostituito con metodi setImage() con sovraccarico (Id2000)
  • Aggiunta di proprietà dell'icona al badge (I629b2)
  • Aggiunta del metodo per impostare il colore di sfondo del badge a punti (I6411c)
  • Aggiungi la proprietà Badge a GridItem, in modo da poter mostrare un badge sopra un'immagine GridItem. (I95de7)
  • È stato aggiunto un oggetto sperimentale Badge che rappresenterà un badge da mostrare su un'immagine. (I9878d)

Versione 1.4.0-alpha01

22 febbraio 2023

Viene rilasciato androidx.car.app:app-*:1.4.0-alpha01. 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 raccolta di app per 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 sulle righe al livello 6. (Ie0a69)
  • Aggiungi callback di messaggistica ad A4C (Ie3986)

Correzioni di bug

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

Versione 1.3

Versione 1.3.0-rc01

7 dicembre 2022

Viene rilasciato androidx.car.app:app-*:1.3.0-rc01. 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

Vengono rilasciati i seguenti elementi: 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 nella libreria di app per auto 1.3.0-alpha01, nella versione beta01 sono state aggiunte le seguenti funzionalità (tutte le funzionalità qui riguardano solo le modifiche lato host senza modifiche all'API):

  • La barra di navigazione mobile continuerà a essere visualizzata anche quando l'utente si trova in una schermata di selezione basata sulla 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 visualizzare un'animazione di timeout. Per impostazione predefinita, dopo il timeout verrà fatto clic su questo pulsante. ([API 5 - All Templates])
  • Il testo secondario di un Row non viene troncato quando l'auto è parcheggiata, ma viene troncato a 2 righe durante la guida. ([API 5 - All Templates])
  • Supporto stato disattivato per Action, Toggle, Row ([API 5 - All Templates])

Modifiche alle API

  • Allarga i vincoli nell'elenco MapTemplate per supportare elenchi selezionabili (I961ed)
  • Rimuovi il vincolo per le Azioni intestazione per consentire l'aggiunta di icone personalizzate. (Iad28f)
  • Aggiungi un vincolo setOnClickListenerAllowed() a ActionsConstraints. Dove ha consentito a Action di impostare OnClickDelegate() sulle azioni, ad eccezione dei 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 i seguenti elementi: 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 il 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 riquadri o elenchi dei contenuti insieme a una mappa (If5826, If44b8)
  • API Livello 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 in più modelli (If5826)
  • androidx.car.app.category.POI aggiunta come categoria per l'attivazione delle app per PDI (e deprecate androidx.car.app.category.PARKING e androidx.car.app.category.CHARGING) (I59da1)

Modifiche alle API

  • Livello API 5: nuovo metodo onClick nell'interfaccia SurfaceCallback per consentire l'interattività tocco sulla mappa (Ia9777)
  • Livello API 5: nuovi flag Action.FLAG_IS_PERSISTENT e Action.FLAG_DEFAULT per descrivere le Action (I96318, I5ad70)
  • Livello API 5: nuovo stato attivato/disattivato per i componenti Action, Row e Toggle (supporto host a partire dalla release 1.3.0-beta01 della libreria) (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: nuovi setTripText e setTripIcon in TravelEstimate.Builder per personalizzare la scheda delle stime di viaggio (Idcc6d, Ic620d)
  • Aggiungi il supporto per i CarIconSpan nel titolo di PaneTemplate (Ia1ee0)
  • Aggiungi il supporto per i CarIconSpan nel titolo e nel testo di Row (Ic1e3c)
  • I ActionStrip sulla mappa ora possono avere fino a quattro azioni (If3522)
  • Aggiorna il livello API di Car App a 5 (I26b8e)
  • Titoli/titoli ora sono facoltativi per PlaceListMapTemplate, PlaceListNavigationTemplate, RoutePreviewNavigationTemplate, GridTemplate, ListTemplate, LongMessageTemplate, MessageTemplate, PaneTemplate e SignInTemplate (I2078d, Icadde)

Correzioni di bug

  • PaneTemplate regole di dimensionamento delle immagini sono state aggiornate in un riquadro di delimitazione quadrato (Idd72e)
  • È stata corretta un'eccezione che si verifica se lo stack di 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 la visualizzazione esiste 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

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

  • Si tratta di una release di stabilizzazione e non ci sono modifiche rispetto alla v1.2.0-rc01.

Versione 1.2.0-rc01

23 marzo 2022

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

  • Questa è una release di stabilizzazione e non ci sono 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 verifica se lo stack di schermate viene modificato dopo il giorno State.DESTROYED. (I3c8eb)
  • L'API CarSensors è stata aggiornata per indicare che non è implementata per AAOS (Idd57b)
  • Aggiornamento di PlaceListMapTempalte.Builder#setCurrentLocationEnabled aggiornato per indicare che ACCESS_COARSE_LOCATION è 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

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

Le app per auto create con questa versione della raccolta destinate alla piattaforma Android Automotive OS ora possono 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 sia con Android Auto 7.2 o versioni successive sia con la nuova piattaforma Android Automotive OS. Per le avvertenze, consulta la sezione Known Issues di seguito.

Modifiche alle API

  • È stata aggiunta l'API setOnContentRefreshListener sperimentale ai modelli dei PDI (I6bf22)

Correzioni di bug

  • È stata corretta una perdita di memoria in CarAppService quando l'host dell'auto si slega. (I5c9ca, b/203594731)
  • File javadoc CarAppActivity aggiornato per includere i requisiti per singleTask launchmode (Id2f95)
  • Riduce il problema visivo al ripristino. (Iff7e0).

Problemi noti

  • I ActionStrip della mappa in PlaceListNavigationTemplate e RoutePreviewNavigateTemplate inizieranno a essere disponibili nelle prossime versioni di Android Auto e Android Automotive OS.

Versione 1.2.0-alpha02

15 dicembre 2021

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

È stato eseguito l'upgrade delle funzionalità annotate con il livello API 4 da sperimentale a stabile, incluse le ActionStrip delle mappe in PlaceListNavigationTemplate e RoutePreviewNavigateTemplate, l'immagine CarIcon nei Pane, le QRCodeSignInMethod e la possibilità di impostare i suggerimenti di rendering (ad es. i 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 è attivo (If9823)
  • Limite predefinito di Pane per l'elenco modificato in 4 (I0068b)

Versione 1.2.0-alpha01

3 novembre 2021

Viene rilasciato androidx.car.app:app-*:1.2.0-alpha01. 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 OS. Per ulteriori dettagli, consulta la guida allo sviluppo.

Modifiche alle API

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

Correzioni di bug

  • Livello API 4: aggiunta di un meccanismo per consentire alle app di inviare aggiornamenti della posizione all'host dell'auto (I3bad3)
  • Correzione di 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

Viene rilasciato androidx.car.app:app-*:1.1.0. 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 maggiori dettagli 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à mappa all'interno del NavigationTemplate
  • Livello API 2: supporto di testo a più lunghezze per consentire alle app di fornire più versioni della stringa da visualizzare a seconda delle dimensioni dello schermo dell'auto.
  • Livello API 3: CarHardwareManager da usare per eseguire query sui dati hardware del veicolo, ad esempio modello e marca, livelli di carburante e altri sensori.

Versione 1.1.0-rc01

3 novembre 2021

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

Questa è una release di stabilizzazione e non ci sono 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 maggiori dettagli sulle API sperimentali.

Versione 1.1.0-beta01

1° settembre 2021

Viene rilasciato androidx.car.app:app-*:1.1.0-beta01. 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)
  • ScreenManager.getStackSize aggiunto (I0b16a)
  • Rimosso il costruttore ScreenController che utilizza 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 un problema per cui se un elemento Screen viene contrassegnato come completato durante la sua 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)
  • È stato aggiunto un metodo di handshake per app e host per stabilire una versione API (I7d6f8)

Versione 1.1.0-alpha02

21 luglio 2021

Viene rilasciato androidx.car.app:app-*:1.1.0-alpha02. 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, ad esempio modello e marca, livelli di carburante e altri sensori. Al momento, questa funzionalità è disponibile solo per Android Auto 6.7 e versioni successive nel canale per i test aperti. Per eseguire il test in un ambiente desktop è necessaria una nuova versione di Desktop Head Unit, che verrà rilasciata separatamente. Continua a seguirci sulla pagina Testare le app Android per le auto per i dettagli su quando sarà disponibile la nuova versione.
  • Segui la guida allo sviluppo e il riferimento alla libreria per ulteriori dettagli e linee guida di progettazione su come utilizzare queste funzionalità negli host delle auto compatibili con il livello API 3.

Modifiche alle API

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

Correzioni di bug

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

Contributo esterno

Problemi noti

  • Nell'SignInTemplate, l'uso del InputSignInMethod potrebbe comportare la visualizzazione di NullPointerException nell'host dell'auto. Questo problema verrà risolto nella prossima release della raccolta. Per aggirare 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

Vengono rilasciate le funzionalità 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. 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 del NavigationTemplate
  • Livello API 2: nuovo supporto di più lunghezze testuali per consentire alle app di fornire più versioni della stringa da visualizzare a seconda delle dimensioni dello schermo dell'auto.
  • Segui la guida allo sviluppo e il Javadoc della libreria per ulteriori dettagli e linee guida di progettazione su come utilizzare queste funzionalità negli host delle auto compatibili con il livello API 2.

Modifiche alle API

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

Correzioni di bug

  • Aggiornamento dei requisiti per le dimensioni delle immagini per tenere conto degli schermi delle auto più grandi (I116dc)
  • Aggiunta di più di due azioni nel corpo del modello non consentita (I32157)
  • Verificati che tutta la creazione di PendingIntent nella libreria di app per auto abbia impostato i flag. (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 API (Id1cb9)
  • Abbiamo reso SignInTemplate e LongMessageTemplate necessarie per richiedere le azioni di auto parcheggiate nel corpo e aggiornare la documentazione per indicare che verranno mostrate solo quando l'auto è parcheggiata (Iddaa9)
  • È stata corretta un'eccezione che si verificava quando si creava un elemento Screen all'avvio (Ifcf40, b/184664896)
  • Colore del testo personalizzato consentito in ForegroundCarColorSpan (I69e59)
  • Risolto un problema per cui si osserva ON_DESTROY su un Session dopo un ON_DESTROY di Screen (I52e01, b/183696617)
  • È consentito aggiornare javadoc quando si imposta un tempo sconosciuto per il tempo rimanente di TravelEstimate. (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 richiede all'app di assumere esplicitamente una dipendenza su lifecycle-common-java8 (I8b8c8)

Problemi noti

  • Nell'SignInTemplate, la tastiera sullo schermo mostra un'icona "Cerca" anziché un'icona "Invio" quando l'utente vuole confermare l'immissione. Come soluzione alternativa, 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 la panoramica e lo zoom in SurfaceCallback potrebbero essere richiamati in modo errato per alcuni gesti di tocco.

Test su app auto versione 1.0.0

Versione 1.0.0-alpha01

24 marzo 2021

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

Questa è la prima release Jetpack della libreria di test del codice sorgente chiuso in precedenza. Consulta i nostri esempi su come utilizzare questa libreria nei test.

Nuove funzionalità

  • I controller per le classi del modello sono stati rimossi. I getter di modelli ora fanno 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 hot.

Versione 1.0.0

Versione 1.0.0

21 aprile 2021

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

Funzionalità principali di 1.0.0

  • All'inizio di aprile abbiamo annunciato che è possibile iniziare a pubblicare 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

  • È stata corretta un'eccezione che si verificava quando si creava un elemento Screen all'avvio (70aae1, b/184664896)
  • Risolto un problema per cui si osserva ON_DESTROY su un Session dopo ON_DESTROY di Screen (0ceecb, b/183696617)

Versione 1.0.0-rc01

24 marzo 2021

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

Correzioni di bug

  • È stato corretto un bug sulle condizioni di gara per cui NavigationManagerCallback#onStopNavigation veniva chiamato dopo l'annullamento della richiamata. Questo accade se il callback è stato cancellato prima dell'esecuzione dell'esecutore di callback (I7fc5e, b/181143772)
  • Risolto un problema che richiedeva che l'app assumesse esplicitamente una dipendenza da lifecycle-common-java8 (I8b8c8)
  • Risolto il problema di NullPointerException generato quando l'app riceve una chiamata stopNavigation dopo aver già rimosso un callback (Ib8b89, b/181143772)
  • Miglioramenti per non inviare chiamate all'app se il suo ciclo di vita non è almeno in uno stato CREATED (I86965, b/179800224, b/177921120)
  • Risolto un problema per cui veniva generata 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

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

Si tratta della prima release Jetpack della libreria di origine 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

  • È stato risolto un problema per cui viene ripristinato il Screen errato quando si aprivano le schermate in sequenza. (b/177590791)