Google Pixel Auto
Letzte Aktualisierung | Stabile Version | Release Candidate | Beta-Ausgabe | Alphaversion |
---|---|---|---|---|
13. November 2024 | 1.4.0 | - | 1.7.0-beta03 | - |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von der Car App Library hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:
Cool
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") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.7
Version 1.7.0-beta03
13. November 2024
Behebung einer Sicherheitslücke und anderer allgemeiner Fehler. Wenn Sie eine niedrigere Version verwenden, aktualisieren Sie sie bitte auf diese Version.
androidx.car.app:app-*:1.7.0-beta03
wird veröffentlicht. Version 1.7.0-beta03 enthält diese Commits.
API-Änderungen
- Aktualisieren Sie den CAL-Code für die Serialisierung / Deserialisierung, damit nur Objekte verarbeitet werden, für die die Annotation
@CarProtocol
deklariert ist. (Ic730e) CarAppExtender
kann jetzt verwendet werden, um das FrameworkNotification.Builder
zu erweitern, anstatt nurNotificationCompat.Builder
. (Id3ad7)- Fügen Sie
KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LIST
hinzu. (I201f9) - Der leere Builder-Konstruktor in
ConversationItem
wird eingestellt und durch einen Konstruktor ersetzt, der erforderliche Parameter annimmt. Außerdem wird eine Prüfung hinzugefügt, um Nullnachrichten zu vermeiden. (Ic8221)
Fehlerkorrekturen
- Achten Sie darauf, dass für die
PlaceList
-Zuordnung der String „Header-Titel“ (nur Text) verwendet wird. (Ic992f) - Diese Bibliothek verwendet jetzt JSpecify-Null-Anmerkungen, die sich auf den Typ beziehen. Kotlin-Entwickler sollten die folgenden Compilerargumente verwenden, um die korrekte Verwendung zu erzwingen:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
. (Ib5367, b/326456246)
Version 1.7.0-beta02
18. September 2024
androidx.car.app:app-*:1.7.0-beta02
wird veröffentlicht. Version 1.7.0-beta02 enthält diese Commits.
API-Änderungen
KEY_ROOT_HINT_MEDIA_HOST_VERSION
zusätzlich hinzufügen (I8796b)- Ersetzen Sie die Klasse
TabContents.Api8Builder
durch den Konstruktor@ExperimentalCarApi
in der KlasseTabContents.Builder
(I26fbe) - Intent-Aktion und Extras für
CarMediaApp
hinzufügen (I50782) - Messaging APIs als nicht experimentell kennzeichnen (I0b070)
SectionedItemTemplate
kann jetzt auch Remote-Elemente laden, sodass lange Listen ohne Abstürze geladen werden können (I0d122)SectionedItemTemplate
in API 8 der Liste der unterstützten Vorlagen inTabTemplate
hinzufügen (Idc5d6)
Fehlerkorrekturen
- Die manuelle Kennzeichnung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies bei Verwendung von R8 mit AGP 7.3 oder höher (z.B. R8 Version 3.3) und für alle Builds bei Verwendung von AGP 8.1 oder höher (z.B. D8 Version 8.1) automatisch über die API-Modellierung erfolgt. Kunden, die AGP nicht verwenden, wird empfohlen, auf D8 Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (I9496c, b/345472586)
Version 1.7.0-beta01
26. Juni 2024
androidx.car.app:app-*:1.7.0-beta01
wird veröffentlicht. Version 1.7.0-beta01 enthält diese Commits. Die Funktionen sind mit denen identisch, die in alpha01 veröffentlicht wurden. Sie werden unten wiederholt:
Neue Funktionen
- Karte mit Inhalt:Neue Vorlage mit einem Karten-Canvas und einer Inhaltsvorlage, die derzeit „Liste“, „Raster“, „Bereich“ oder „Nachricht“ sein kann.
RoutePreview
,PlaceListNavigation
undMapTemplate
werden nicht mehr unterstützt. Vorlagen funktionieren weiterhin wie gewohnt.- Beispiel-Apps wurden aktualisiert, sodass die
MapWithContent
-Nutzung anstelle von eingestellten Vorlagen angezeigt wird
- Unterhaltungselement:Neue APIs zum Anzeigen von Unterhaltungen (IM, SMS) und zum Vorlesen von Assistant-Text im Auto.
- Fahrzeugabmessungen:Neue API zum Abrufen von Fahrzeugabmessungen (derzeit Daten in der AAOS).
API-Änderungen
- Fügen Sie
MediaPlaybackTemplate.Builder
das@ExperimentalCarApi
-Tag hinzu. (Ic1957) - Fügt in der experimentellen Version eine neue
SectionedItemTemplate
hinzu. (I5958a) - Einführung von
CarAppApiLevel 8
(I3fa22) - Es wird
MediaPlaybackTemplate
hinzugefügt, um Inhalte während der Medienwiedergabe in der Auto-App-Mediathek anzuzeigen. (I3c10d) - Neue API für Apps hinzugefügt, um zu erkennen, ob das System Hintergrundaudio während der Fahrt unterstützt (I0f868)
Fehlerkorrekturen
- Bestimmte Fälle von Speicherlecks und Abstürzen im CAL-Clientcode und in der CAL-Navigationsbeispielanwendung wurden behoben. (I55e04)
- Ersetzen Sie
requireNotNull instances
in deronDestroy
-Methode vonBaseCarAppActivity
durch If-Null-Prüfungen, um Abstürze zu vermeiden. (Iec676)
Version 1.7.0-alpha02
17. April 2024
androidx.car.app:app-*:1.7.0-alpha02
wird veröffentlicht. Version 1.7.0-alpha02 enthält diese Commits.
Neue Funktionen
- Es wurden Flags für verworfene kartenbasierte Vorlagen hinzugefügt, die in Zukunft von der
MapWithContent
-Vorlage unterstützt werden.
API-Änderungen
- Einstellung der alten
MapTemplate
,RoutePreviewNavigationTemplate
undPlaceListNavigationTemplate
und Empfehlung der neuenMapWithContentTemplate
(Ib0a08)
Version 1.7.0-alpha01
3. April 2024
androidx.car.app:app-*:1.7.0-alpha01
wird veröffentlicht. Wir haben unser Versionierungsschema für Bibliotheken an die aktive CarApi-Version angepasst. Dies soll auf Grundlage von Entwicklerfeedback für weniger Verwirrung beim Benennungsschema sorgen. Daher überspringen wir Version 1.5 und Version 1.6 und gehen direkt zu Version 1.7 über. Version 1.7.0-alpha01 enthält diese Commits.
Neue Funktionen
- Karte mit Inhalten: Neue Vorlage mit dem Namen
MapWithContent
, die Listen, Raster, Bereiche und Nachrichten als Inhalt in einer Karte unterstützt.RoutePreview
,PlaceListNavigation
: Kartenvorlagen werden nicht mehr unterstützt.- Beispiel-Apps wurden aktualisiert, um die Funktionen eingestellter Vorlagen mit
MapWithContent
zu zeigen.
- Conversation Item: Neue APIs zum Anzeigen von Unterhaltungen (IM, SMS) und zur Aussprache von Assistant-Text im Auto.
- Fahrzeugabmessungen: Neue API zum Abrufen von Fahrzeugabmessungen (derzeit Daten von AAOS).
API-Änderungen
- Bildtyp für extra kleine Zeilen als experimentell kennzeichnen (I5184b)
- Die
CarInfo#fetchExteriorDimensions
API wurde hinzugefügt, über die Zugriff auf Informationen zu den Außenabmessungen von Fahrzeugen wie Höhe und Breite möglich ist (Ia40c5) ExperimentalAPI
-Tag ausMapWithContentTemplate
(I66db8) entfernt- Aktualisieren Sie den Parameter
GridItem#setTitle
so, dass er optional ist. (I3d610) - Für die
GetHeader
API ist API 7 nicht erforderlich, da sie abwärtskompatibel ist (I8c812) - Unterstützung für
Header
inListTemplate
hinzufügen,headerAction
,headerTitle
undactionStrip
verwerfen (I7ae01) - Einstellung von
title
,headerAction
undactionStrip
inGridTemplate
und Unterstützung fürHeader
hinzufügen (I41a9c) - Entfernen der Anforderung für Level 7 für experimentelle APIs: Symbol,
GridTemplate
Getter/Setter für Artikelgröße und Bildform,GridItem
Methoden zum Abrufen/Festlegen des Logos. (Id71eb) - Einstellung von
title
,headerAction
undactionStrip
inPaneTemplate
, neue Unterstützung fürHeader
hinzufügen (I23154) - Die Media Center-Telemetrie wurde von
BroadcastReceiver
zu „Benutzerdefinierte Aktion für die Suche“ geändert. (I4185f) - Unterstützung für das Attribut
Header
inMessageTemplate
hinzugefügt Unterstützung fürActionStrip
,headerAction
undtitle
eingestellt (Ie2de8) - Dauerhafte Sichtbarkeit von Benachrichtigungen ändern (Icf8a8)
- Entfernen Sie das
isLoading
-Attribut aus der übergeordneten Vorlage (I651e6). - Extras hinzufügen, um Medien-Apps über die wichtigsten UI-Parameter zu informieren (I85ca2)
- Mediacenter-Analysefunktion zu
MediaExtensions
hinzufügen (I7ce28) - Option für ein besonders kleines Bild in Zeilen hinzugefügt. (I72c03)
Fehlerkorrekturen
- Aktualisieren Sie die Javadoc-Datei für
ConversationItem
, um anzugeben, dass Nachrichten in der Reihenfolge vom ältesten zum neuesten sortiert werden sollten. (I77a2a) ListTemplate
-Trunkierungslogik aktualisieren, um die ältesten Nachrichten ausConversationItem
zu entfernen (Ie0a61)
Version 1.4
Version 1.4.0
29. Mai 2024
androidx.car.app:app-*:1.4.0
wird veröffentlicht. Version 1.4.0 ist eine Hochstufung von 1.4.0-rc02.
Wichtige Änderungen seit Version 1.3.0
- Kartenrendering für Navigations-Apps im Kombi-Instrument
- Neue Tab-Vorlage für verbessertes App-Layout und bessere Nutzerfreundlichkeit
- Unterstützung für adaptive Aufgabenlimits
- Sekundäre Aktionen für Listenelemente
Version 1.4.0-rc02
13. Dezember 2023
androidx.car.app:app-*:1.4.0-rc02
wird veröffentlicht. Version 1.4.0-rc02 enthält diese Commits. Nur kleinere Fehlerkorrekturen
Fehlerkorrekturen
- Javadoc für
ConversationItem
aktualisieren, um anzugeben, dass Nachrichten in der Reihenfolge vom ältesten zum neuesten sortiert werden sollten (I77a2a) ListTemplate
-Trunkierungslogik aktualisieren, um die ältesten Nachrichten ausConversationItem
zu entfernen (Ie0a61)
Version 1.4.0-rc01
1. November 2023
androidx.car.app:app-*:1.4.0-rc01
wird ohne nennenswerte Änderungen veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
Version 1.4.0-beta02
20. September 2023
androidx.car.app:app-*:1.4.0-beta02
wird veröffentlicht. Version 1.4.0-beta02 enthält diese Commits. Diese Version ist fast identisch mit beta01, jedoch wird die compileSdk
-Anforderung auf 33 gesenkt.
Fehlerkorrekturen
- Ein Fehler wurde behoben, durch den Ladebildschirme in Tabs nicht richtig angezeigt wurden. (cae860)
Version 1.4.0-beta01
9. August 2023
androidx.car.app:app-*:1.4.0-beta01
wird veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Hinweis:Für 1.4-beta01 ist compileSdk34 erforderlich, das sich noch im Entwicklungsstatus befindet. Dieses Problem wird in Version 1.4-beta02 behoben. Alternativ können Sie der
settings.gradle
-Datei Ihres Projektsandroid.suppressUnsupportedCompileSdk=34
hinzufügen, um die Warnung vorübergehend zu unterdrücken.
Neue Funktionen
- Kartenrendering für Kombiinstrumente in Navigations-Apps
- Neue Tab-Vorlage für ein verbessertes App-Layout und mehr Nutzerfreundlichkeit
- Unterstützung für adaptive Aufgabenlimits
- Sekundäre Aktionen für Listenelemente
API-Änderungen
- Siehe alpha02
Version 1.4.0-alpha02
26. Juli 2023
androidx.car.app:app-*:1.4.0-alpha02
wird veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
- Die Veröffentlichung von Alpha02 soll eine Vorbereitung auf die bevorstehende Veröffentlichung von Beta01 sein.
Neue Funktionen
- Kartenrendering im Kombi-Instrument für Navigations-Apps
- Tabs für Apps hinzugefügt, um das Layout zu verbessern
- Es wurden Optionen zum Rendern von Listen-/Rastervorlagen hinzugefügt.
- Neue Kategorien für Wetter und Kommunikation hinzugefügt
- Mehrere APIs auf die nächste CarApi 7-Version umstellen
API-Änderungen
CarMessage
(I5aaf6) Multimediafelder hinzufügen- Fügen Sie
ConversationItem
in der Auto-App-Bibliothek (Ie5ed6) benutzerdefinierte Aktionen hinzu. - Mit Extras angeben, dass ein Medienelement mit einem immersiven Audioformat wiedergegeben wird, und das Logo des Inhaltsformats präsentieren (Icb5bb)
- Neuer Aktionstyp „
ActionsConstraints
API“ hinzugefügt, um die Schaltfläche „Schreiben“ zu unterstützen. (I31661) set/getTemplate
inset/get ContentTemplate
(Ica036) geändert- Der Vorlagenparameter wäre jetzt
@NonNull
. AktualisierteMapWithContentTemplate
API-Dokumentation (I0f8ed) - Das
@ExperimentalCarApi
-Tag für Aktionen inListTemplate
wird für die Einführung in CAL 1.4 entfernt (I2cfcb) - Entfernt das
@ExperimentalCarApi
-Tag fürTabTemplate
(Ifcb82) @ExperimentalCarApi
-Anmerkungen aus sekundären Zeilenaktionen und -dekorationen entfernen (I8487e)TabTemplate
wird die ID des aktiven Tabs hinzugefügt und der aktive Status von Tabs wird eingestellt (I96932)ItemImageShape
-Property zuGridTemplate
hinzufügen (Ibf431)- Fügen Sie
GridTemplate
die EigenschaftItemSize
hinzu, mit der die Größe von Rasterelementen in kleinen, mittleren und großen Buckets gesteuert wird. (Icdb3b) - Gewähren Sie Entwicklern API-Zugriff, damit sie eine Kopie des aktuellen Bildschirmstacks erhalten. (I48107)
- Der App-Bibliothek für Autos wird eine Kategorie für Wetter-Apps hinzugefügt (I2be44)
- Die Kategorie zum Aufrufen von Apps wird der Auto-App-Bibliothek hinzugefügt (Icab33)
GridItem.Builder#setBadge()
durch überladenesetImage()
-Methoden ersetzt (Id2000)- Symboleigenschaft zum Kennzeichen hinzufügen (I629b2)
- Methode zum Festlegen der Hintergrundfarbe des Punktsymbols hinzufügen (I6411c)
- Fügen Sie
GridItem
das Attribut „Logo“ hinzu, damit ein Logo über einemGridItem
-Bild angezeigt werden kann. (I95de7) - Es wurde ein experimentelles Badge-Objekt hinzugefügt, das ein Badge darstellt, das über einem Bild angezeigt wird. (I9878d)
Version 1.4.0-alpha01
22. Februar 2023
androidx.car.app:app-*:1.4.0-alpha01
wird veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
API-Änderungen
- Fügen Sie
GridTemplate
in der Bibliothek für Auto-Apps (Id0191) Aktionen der obersten Ebene hinzu. - Fügen Sie
ListTemplate
in der Auto-App-Bibliothek (I9efab) Aktionen auf oberster Ebene hinzu. - Mit Extras können Sie den Untertitel oder die Beschreibung eines Medienelements mit anderen Medienelementen verknüpfen (Ic84bf)
- Aktualisieren Sie die API-Ebene für Zeilenaktionen auf Stufe 6. (Ie0a69)
- A4C-Messaging-Callbacks hinzufügen (Ie3986)
Fehlerkorrekturen
- Fügen Sie fehlende Java-Doc-Referenzen für
CarMessage
hinzu. (I5db1c) equals()
undhashCode()
fürConversationItem
undCarMessage
überschreiben (I6fd10)ConversationItem.mMessages
-Validierung verbessern (nicht null, nicht leer) (Iafc51)@Keep
-Anmerkungen zuConversationItem
-Feldern hinzufügen (I5d250)- Java-Dokumente für die Zeilendekoration und sekundäre Aktionen aktualisieren (I000b6)
Version 1.3
Version 1.3.0-rc01
7. Dezember 2022
androidx.car.app:app-*:1.3.0-rc01
wird veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
- Kleinere Fehlerkorrekturen aus Beta01. Keine größeren Änderungen.
Version 1.3.0-beta01
7. September 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
und androidx.car.app:app-testing:1.3.0-beta01
werden freigegeben. Version 1.3.0-beta01 enthält diese Commits.
- Mit dieser Bibliothek erstellte Auto-Apps können jetzt mit API-Level 5 im Play Store veröffentlicht werden (siehe Entwicklerleitfaden). Funktionen, die mit API-Ebene 5 oder niedriger gekennzeichnet sind, sind sowohl mit Android Auto 8.1 und höher als auch mit dem Google Automotive App Host 1.4 und höher kompatibel.
Neue Funktionen
Zusätzlich zu den Funktionen, die in der Car App Library 1.3.0-alpha01 hinzugefügt wurden, wurden im Rahmen von beta01 die folgenden Funktionen hinzugefügt. Alle Funktionen hier beinhalten nur hostseitige Änderungen ohne API-Änderungen:
- Die schwebende Navigationsleiste wird auch dann angezeigt, wenn sich ein Nutzer in
PlaceListNavigationTemplate
,RoutePreviewNavigationTemplate
undMapTemplate
in einem kartenbasierten Auswahlbildschirm befindet. Aktualisieren Sie dazu die Navigationsinformationen überNavigationManager.updateTrip()
. - Aktivieren Sie die Aktionsschaltfläche mit
FLAG_DEFAULT
, um eine Zeitüberschreitungsanimation zu erhalten. Nach Ablauf der Zeitüberschreitung wird standardmäßig auf diese Schaltfläche geklickt. ([API 5 - All Templates]
) - Der Subtext einer
Row
wird nicht abgeschnitten, wenn das Auto geparkt ist, sondern beim Fahren auf zwei Zeilen. ([API 5 - All Templates]
) - Unterstützung des deaktivierten Status für
Action
,Toggle
,Row
([API 5 - All Templates]
)
API-Änderungen
- Einschränkungen in der Liste
MapTemplate
lockern, um auswählbare Listen zu unterstützen (I961ed) - Entfernen Sie die Einschränkung für Headeraktionen, um benutzerdefinierte Symbole zuzulassen. (Iad28f)
- Fügen Sie die Einschränkung
setOnClickListenerAllowed()
zuActionsConstraints
hinzu. Es war möglich, dassAction
OnClickDelegate()
auf Aktionen festlegte, mit Ausnahme der Standardsymboltypen. (TYPE_APP_ICON
,TYPE_BACK
undTYPE_PAN
) (I3c745)
Fehlerkorrekturen
- Kompatibilität von Android Automotive Template Host 1.4 und höher mit gewölbten Displays hinzugefügt (
[Host change]
)
Version 1.3.0-alpha01
27. Juli 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
und androidx.car.app:app-testing:1.3.0-alpha01
werden freigegeben. Version 1.3.0-alpha01 enthält diese Commits.
Funktionen, die mit der API-Ebene 5 gekennzeichnet sind, sind mit Android Auto 7.9 und höher kompatibel.
Neue Funktionen
- API-Level 5: Neue
MapTemplate
, die von Navigations-Apps verwendet werden kann, um neben einer Karte einen Bereich oder Listeninhalte anzuzeigen (If5826, If44b8) - API-Ebene 5: Neue
CarAudioRecord
API zum Aufzeichnen von Audioeingaben über das Mikrofon des Hostfahrzeugs (I5e71a) - API-Ebene 5: Neue
SuggestionManager
API, mit der Apps dem Host Vorschläge machen können (I5c103) - API-Level 5: neue
Alert
API zum Anzeigen von Kontextbenachrichtigungen auf derNavigationTemplate
(I163a7, I5ad70) - API-Level 5: Neue
Header
- undMapController
-Komponenten zur Wiederverwendung in verschiedenen Vorlagen (If5826) androidx.car.app.category.POI
als Kategorie zum Aktivieren von POI-Apps hinzugefügt (androidx.car.app.category.PARKING
undandroidx.car.app.category.CHARGING
eingestellt) (I59da1)
API-Änderungen
- API-Ebene 5: Neue
onClick
-Methode in derSurfaceCallback
-Benutzeroberfläche, die das Tippen auf die Karte ermöglicht (Ia9777) - API-Level 5: Neue Flags
Action.FLAG_IS_PERSISTENT
undAction.FLAG_DEFAULT
zur Beschreibung vonAction
s (I96318, I5ad70) - API-Ebene 5: neuer aktivierter/deaktivierter Status für die Komponenten
Action
,Row
undToggle
(Hostunterstützung wird ungefähr mit der 1.3.0-beta01-Version der Bibliothek eingeführt) (Id8a09) - API-Ebene 5: Die neue
Header
-Komponente wird übersetHeader
auf derPlaceListNavigationTemplate.Builder
undRoutePreviewNavigationTemplate.Builder
bevorzugt. Die vorhandenen MethodensetTitle
undsetHeaderAction
werden eingestellt. (I30e6a) - API-Level 5: Neue
setOnContentRefreshListner
-Methode fürPlaceListMapTemplate.Builder
undPlaceListNavigationTemplate.Builder
zur Verwendung mit Implementierungen der neuenOnContentRefreshListner
-Schnittstelle. - API-Ebene 5: Neue
setTripText
undsetTripIcon
in derTravelEstimate.Builder
zum Anpassen der Karte mit Reisezeit- und -kostenschätzung (Idcc6d, Ic620d) - Unterstützung für
CarIconSpan
s im Titel derPaneTemplate
hinzufügen (Ia1ee0) - Unterstützung für
CarIconSpan
im Titel und Text vonRow
hinzufügen (Ic1e3c) - Karten-
ActionStrip
s können jetzt bis zu vier Aktionen haben (If3522) - API-Level der Auto-App auf 5 aktualisieren (I26b8e)
- Überschriften/Titel sind jetzt für
PlaceListMapTemplate
,PlaceListNavigationTemplate
,RoutePreviewNavigationTemplate
,GridTemplate
,ListTemplate
,LongMessageTemplate
,MessageTemplate
,PaneTemplate
undSignInTemplate
(I2078d, Icadde) optional.
Fehlerkorrekturen
- Die Regeln für die Bildgröße von
PaneTemplate
wurden auf einen quadratischen Begrenzungsrahmen aktualisiert (Idd72e) - Eine Ausnahme wurde behoben, die auftritt, wenn der Bildschirmstapel nach
State.DESTROYED
geändert wird. (I3c8eb) - Es wurde eine Null-Prüfung zum Abrufen des App-Symbols hinzugefügt (I3f710).
- Aktualisierung der Car Hardware API, damit standardmäßig
STATUS_UNKNOWN
anstelle vonSTATUS_UNAVAILABLE
verwendet wird (Ic9444) - Prüfen, ob Display vorhanden ist, bevor Oberfläche erstellt wird (Ice027a)
- Behebung eines Fehlers bei
CarValue.equals()
im Zusammenhang mitSTATUS_UNIMPLEMENTED
(I24451)
Version 1.2
Version 1.2.0
9. November 2022
androidx.car.app:app-*:1.2.0
wird veröffentlicht. Version 1.2.0 enthält diese Commits.
- Dies ist eine Stabilisierungsversion. Im Vergleich zu Version 1.2.0-rc01 gibt es keine Änderungen.
Version 1.2.0-rc01
23. März 2022
androidx.car.app:app-*:1.2.0-rc01
wird veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
- Dies ist ein Stabilisierungsrelease. Im Vergleich zu
v1.2.0-beta02
gibt es keine API-Änderungen. Es wurden neue experimentelle Funktionen (API-Level 5) hinzugefügt, die für zukünftige Android Auto- und Android Automotive-Releases vorgesehen sind.
Fehlerkorrekturen
- Eine Ausnahme wurde behoben, die auftritt, wenn der Bildschirmstapel nach
State.DESTROYED
geändert wird. (I3c8eb) - Die
CarSensors
API wurde aktualisiert, um anzugeben, dass sie nicht für AAOS implementiert ist (Idd57b). PlaceListMapTempalte.Builder#setCurrentLocationEnabled
wurde aktualisiert, um anzugeben, dass ACCESS_COARSE_LOCATION für die Funktion ausreichend ist (I510c2)- Die Ausfahrtsnummer ist für Abbiegetypen bei Kreisverkehren mit Abbiegewinkel optional (Ife7d1).
Version 1.2.0-beta02
26. Januar 2022
androidx.car.app:app-*:1.2.0-beta02
wird veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Mit dieser Bibliotheksversion erstellte Auto-Apps, die auf die Android Automotive OS
-Plattform ausgerichtet sind, können jetzt im Play Store-Kanal für offene Tests veröffentlicht werden. Weitere Informationen finden Sie im Entwicklerleitfaden.
Funktionen, die mit API-Ebene 4 und niedriger gekennzeichnet sind, sind sowohl mit Android Auto
7.2 und höher als auch mit der neuen Android Automotive OS
-Plattform kompatibel. Weitere Informationen finden Sie im Abschnitt Known Issues
unten.
API-Änderungen
- Die experimentelle
setOnContentRefreshListener
API wurde POI-Vorlagen hinzugefügt (I6bf22)
Fehlerkorrekturen
- Ein Speicherleck in
CarAppService
wurde behoben, das auftrat, wenn die Bindung des Auto-Hosts aufgehoben wurde. (I5c9ca, b/203594731) CarAppActivity
-Javadoc wurde um Anforderungen für den Startmodus „singleTask“ ergänzt (Id2f95)- Reduziert das visuelle Problem beim Fortsetzen. (Iff7e0)
Bekannte Probleme
- Die Karten
ActionStrip
inPlaceListNavigationTemplate
undRoutePreviewNavigateTemplate
werden in den nächstenAndroid Auto
- undAndroid Automotive OS
-Releases verfügbar sein.
Version 1.2.0-alpha02
15. Dezember 2021
androidx.car.app:app-*:1.2.0-alpha02
wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Funktionen, die mit API-Ebene 4 annotiert sind, wurden von „experimentell“ zu „stabil“ umgestellt. Dazu gehören die KartenActionStrip
in PlaceListNavigationTemplate
und RoutePreviewNavigateTemplate
, das CarIcon
-Bild in Pane
, die QRCodeSignInMethod
und die Möglichkeit, Renderinghinweise (z. B. Flags) in Action
festzulegen.
Neue Funktionen
- In Android Auto 7.1 und höher wurde das Artikellimit für
Pane
von 2 auf 4 erhöht.
API-Änderungen
CarUnit
(I36a3b) hat eine experimentelletoString()
-Methode erhalten.
Fehlerkorrekturen
- Ein Absturz in
CarAppPermissionActivity
wurde behoben, der auftrat, wenn der Rückruf nicht mehr aktiv war (If9823) - Standardlistenlimit von
Pane
auf 4 geändert (I0068b)
Version 1.2.0-alpha01
3. November 2021
androidx.car.app:app-*:1.2.0-alpha01
wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Alle neuen v1.2.0
-Funktionen (API 4 und höher) sind derzeit experimentell und auf zukünftige Android Auto- und Android Automotive OS-Releases ausgerichtet. Weitere Informationen finden Sie im Entwicklerleitfaden.
API-Änderungen
- Die
AutomotiveCarInfo
API ist jetzt experimentell. (Ia13e5) - API-Ebene 4 der Car App Library hinzugefügt (I2a2e7)
- API-Level 4: Unterstützung für das Festlegen einer
CarIcon
inPane
hinzugefügt (Ifcc12) - API-Ebene 4: Anmeldemethode per QR-Code hinzugefügt (Ib623e)
- API-Level 4: set/getFlags wurde zu
Action
hinzugefügt (Ic03ab) - API-Level 4: Unterstützung für Schwenken und Zoomen in
PlaceListNavigationTemplate
undRoutePreviewNavigationTemplate
hinzugefügt (I9d8a3)
Fehlerkorrekturen
- API-Level 4: Mechanismus hinzufügen, mit dem Apps Standortaktualisierungen an den Auto-Host senden können (I3bad3)
- Behebung eines Problems, bei dem die Berechtigung „TEMPLATE_RENDERER“ von der Logik zur Hostüberprüfung nicht richtig gefunden wurde (I62618)
Version 1.1.0
Version 1.1.0
15. Dezember 2021
androidx.car.app:app-*:1.1.0
wird veröffentlicht. Version 1.1.0 enthält diese Commits.
Dies ist eine Stabilisierungsversion. Es gibt keine Änderungen im Vergleich zu v1.1.0-rc01
. Weitere Informationen zu den neuen Funktionen der Auto-App-Mediathek finden Sie in den Versionshinweisen für v1.2.0-alpha02
.
Wichtige Änderungen seit Version 1.0.0
- API-Ebene 2:
SignInTemplate
undLongMessageTemplate
, die für die Anmeldung verwendet werden können, wenn das Fahrzeug geparkt ist - API-Ebene 2: Unterstützung der Karteninteraktivität innerhalb des
NavigationTemplate
- API-Level 2: Unterstützung für Text mit unterschiedlicher Länge, damit Apps je nach Größe des Autodisplays mehrere Versionen des Strings anzeigen können.
- API-Ebene 3:
CarHardwareManager
Mit dieser API können Hardwaredaten des Fahrzeugs abgefragt werden, z. B. Modell und Marke, Tankfüllung und andere Sensoren.
Version 1.1.0-rc01
3. November 2021
androidx.car.app:app-*:1.1.0-rc01
wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Dies ist ein Stabilisierungsrelease. Im Vergleich zu v1.1.0-beta01
gibt es keine API-Änderungen. Es wurden neue experimentelle Funktionen (API-Level 4) hinzugefügt, die für zukünftige Android Auto-Releases vorgesehen sind. Weitere Informationen zu den experimentellen APIs finden Sie in den Versionshinweisen für v1.2.0-alpha01
.
Version 1.1.0-beta01
1. September 2021
androidx.car.app:app-*:1.1.0-beta01
wird veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Alle v1.1.0
-Funktionen (API 2 und höher) sind vollständig mit Android Auto 6.7 und höher kompatibel. Weitere Informationen finden Sie im Entwicklerleitfaden.
API-Änderungen
Manager
als öffentliche Schnittstelle entfernt (Ie381b)- Es ist jetzt möglich, einen benutzerdefinierten Hintergrund mit Branding für die Berechtigungsanfrage festzulegen (I74b76).
ScreenManager.getStackSize
(I0b16a) wurde hinzugefügt- Der
ScreenController
-Konstruktor, der explizitTestCarContext
annimmt, wurde entfernt (Iefebc)
Fehlerkorrekturen
- Beim Erstellen von
CarHardwareManager
wurde eine API-Ebene hinzugefügt (I48f9b). - Es wurden Prüfungen auf ungültige
CarSpan
-Nutzung in der API hinzugefügt (I65ae6). - Ein Problem wurde behoben, durch das der Stapel in einem fehlerhaften Zustand zurückblieb, wenn ein
Screen
während der Erstellung als fertig markiert wurde (I81b13) - Behebung eines Problems, bei dem
CarNotificationManager.notify
einen Fehler für AutomotiveOS protokollierte, wenn es Aktionen mit Symbolen in derCarAppExtender
gab (I3633d) - Es wurde eine Handshake-Methode für App und Host hinzugefügt, um eine API-Version festzulegen (I7d6f8).
Version 1.1.0-alpha02
21. Juli 2021
androidx.car.app:app-*:1.1.0-alpha02
wird veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
- API-Ebene 3: Es wurde eine
CarHardwareManager
hinzugefügt, mit der Hardwaredaten des Fahrzeugs abgefragt werden können, z. B. Modell und Marke, Tankfüllung und andere Sensoren. Diese Funktion ist derzeit nur für Android Auto 6.7 und höher im Open-Test-Kanal verfügbar. Für den Test in einer Desktopumgebung ist eine neue Version vonDesktop Head Unit
erforderlich, die separat veröffentlicht wird. Weitere Informationen dazu, wann die neue Version verfügbar sein wird, finden Sie auf der Seite Android-Apps für Autos testen. - Weitere Informationen und Designrichtlinien zur Verwendung dieser Funktionen in Auto-Hosts, die mit API-Level 3 kompatibel sind, finden Sie im Entwicklungsleitfaden und in der Bibliotheksreferenz.
API-Änderungen
- Die Lebenszyklusmethoden
SessionController
undScreenController
wurden in einer einzigenmoveToState
-Methode zusammengeführt (I1ed00) CarContext#getHostInfo()
(I8977e) wurde hinzugefügt- Verworfene Felder wurden entfernt. (I67168)
SessionController
undScreenController
wurden aktualisiert, um Konstruktoren direkt zu übergeben (Iabf22)PinSignInMethod.Builder
undProviderSignInMethod.Builder
entfernt (I9f0cb)- „setCarAppResult()“ wurde hinzugefügt, um die Verwendung von Apps mit Vorlagen „für das Ergebnis“ in AAOS zu ermöglichen (I37741)
CarHardware
-Schnittstellen mit@MainThread
kommentiert (Ib2f85)OnCarDataListener
inOnCarDataAvailableListener
umbenannt (I518ca)- Methodenamen und Javadoc für
CarInfo
,Speed
undMileage
aktualisiert. (I86672) Toll
wurde inTollCard
umbenannt. (I3e7c8)- Die Einstellung von
PinSignInMethod.getPin
wurde entfernt. Es wird durchPinSignInMethod.getPinCode
(I996ce) ersetzt. OnInputCompletedListener
wurde entfernt (durchInputCallback
ersetzt). (Ib5be1)- Für
PinSignInMethod
wird jetztCharSequence
anstelle vonString
verwendet (I275d5)
Fehlerkorrekturen
- Javadoc-Fehlerkorrekturen für Auto-Hardware. (I2abbc)
Externer Beitrag
Bekannte Probleme
- Wenn du in der
SignInTemplate
dieInputSignInMethod
verwendest, kann das zu einerNullPointerException
im Autohost führen. Dies wird in der nächsten Version der Bibliothek behoben. Sie können das Problem umgehen, indem Sie diese Zeile in die Proguard-Konfiguration Ihrer App aufnehmen:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
Version 1.1.0-alpha01
16. Juni 2021
androidx.car.app:app:1.1.0-alpha01
, androidx.car.app:app-automotive:1.1.0-alpha01
und androidx.car.app:app-testing:1.1.0-alpha01
werden losgelassen. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
- API-Ebene 2: neue
SignInTemplate
undLongMessageTemplate
, die für die Anmeldung verwendet werden können, wenn das Fahrzeug geparkt ist. - API-Ebene 2: Neue Unterstützung für die Karteninteraktivität innerhalb von
NavigationTemplate
- API-Level 2: Neue Unterstützung für Text mit unterschiedlicher Länge, damit Apps je nach Größe des Autodisplays mehrere Versionen des Strings zur Anzeige bereitstellen können.
- Weitere Informationen und Designrichtlinien zur Verwendung dieser Funktionen in Auto-Hosts, die mit API-Level 2 kompatibel sind, finden Sie im Entwicklerleitfaden und in der Javadoc der Bibliothek.
API-Änderungen
- Alle
*Callback
-Schnittstellenmethoden wurden als Standard festgelegt undOnRequestPermissionsCallback
inOnRequestPermissionsListener
umbenannt (Ib3ec9) - Die
androidx.car.app.hardware
-Klassen wurden aktualisiert, um unnötige Builder und Parameterklassen zu entfernen. (I67beb) - Es wurden
androidx.car.app.hardware
-Klassen für den Zugriff auf fahrzeugspezifische Daten wie Kraftstoff, Akku und Geschwindigkeit hinzugefügt. (Iff3c9) - Unterstützung für
ActionStrip
aufMessageTemplate
hinzugefügt (Ida657) setLoading
wurde zuMessageTemplate
hinzugefügt. (I2a4b5)ConnectionToCar
inCarConnection
umbenannt (Ife9bd)NavigationTemplate
wurde geändert, sodass eine explizitePanModeDelegate
zurückgegeben wird (I13877)- Parameterreihenfolge für
CarContext.requestPermissions
(Ib890a) aktualisiert - Metadatenschlüssel aktualisiert, um die Mindestversion der Auto API auf
androidx.car.api.minCarApiLevel
festzulegen (Ib0d41) - API zum Überwachen des Status der Fahrzeugverbindung erstellt (Ifc935)
- Unterstützung für das Festlegen einer Ein/Aus-Schaltfläche für eine
Action
und der SchwenkmodusAction
(Ica6af) hinzugefügt CarNotificationManager
wurde erstellt, um das Senden von Benachrichtigungen im Auto zu unterstützen (I10d7a)ConstraintManager
zum Angeben von Listenlimits vom Host hinzugefügt (I8690e)- In
NavigationTemplate
(I77aa6) wurden die API für den Schwenkmodus und die Karte mit Aktionsleiste hinzugefügt. - In
SurfaceCallback
wurde die Schwenk- und Zoom-API für Navigations-Apps hinzugefügt (Id5e9d) CarAppApiLevel
auf 2 aktualisiert (Ic1540)- Es ist jetzt möglich, Berechtigungen von einer
CarAppService
anzufordern (I5421e) RequiresCarApi(2)
-Anmerkung zur Multi-Text API hinzugefügt (Iacb62)- Mehrere Textvarianten im Titel der Vorlage für die Halbliste zulässig (Ib8df7)
- Neue
LongMessageTemplate
hinzugefügt (erfordert Car API Level 2) (Ic5cee)
Fehlerkorrekturen
- Die Anforderungen an die Bildgröße wurden aktualisiert, um größere Autodisplays zu berücksichtigen (I116dc)
- Es ist nicht mehr zulässig, in Vorlagenkörpern mehr als zwei Aktionen hinzuzufügen (I32157)
- Es wurde sichergestellt, dass bei der Erstellung von
PendingIntent
s in der Bibliothek der Auto-App Flags gesetzt werden. (If84fe, b/186394900) - Javadoc aktualisiert, damit der Text von
Row
bei Aktualisierungen geändert werden kann (If3f9c) androidx.activity:activity:1.2.0
ist jetzt eine API-Abhängigkeit (Id1cb9)- Für
SignInTemplate
undLongMessageTemplate
wurden im Text nur Aktionen für geparkte Fahrzeuge erforderlich gemacht. Außerdem wurde die Dokumentation aktualisiert, um anzugeben, dass sie nur angezeigt werden, wenn das Auto geparkt ist (Iddaa9) - Behebung einer Ausnahme, die beim Einblenden eines
Screen
während des Starts auftritt (Ifcf40, b/184664896) - Zulässige benutzerdefinierte Textfarbe in
ForegroundCarColorSpan
(I69e59) - Ein Problem wurde behoben, bei dem
ON_DESTROY
auf einemSession
nach demON_DESTROY
einesScreen
angezeigt wurde (I52e01, b/183696617) - Die Javadoc-Anmerkungen dazu, wann die verbleibende Zeit einer
TravelEstimate
auf eine unbekannte Zeit festgelegt werden darf, wurden aktualisiert. (I99610, b/183632456) Action
wurde aktualisiert, umForegroundColorSpan
im Titel und eine beliebige benutzerdefinierte Hintergrundfarbe zu unterstützen (I578e4)NavigationManagerCallback#onStopNavigation
nicht ausführen, wenn der Callback gelöscht wird, bevor der Executor ausgeführt wird (I7fc5e, b/181143772)- Ein Problem wurde behoben, bei dem die App explizit eine Abhängigkeit von „lifecycle-common-java8“ (I8b8c8) übernehmen musste.
Bekannte Probleme
- In der
SignInTemplate
wird auf der Bildschirmtastatur ein Suchsymbol anstelle eines Eingabesymbols angezeigt, wenn der Nutzer die Eingabe bestätigen möchte. Als Behelfslösung können Nutzer auf die Smartphone-Tastatur zugreifen, die aktiviert wird, wenn das Eingabefeld den Fokus hat. - In Android Auto Version 6.5 werden die Pan- und Zoom-Callbacks in
SurfaceCallback
bei einigen Touch-Gesten möglicherweise fälschlicherweise aufgerufen.
Version 1.0.0 der App-Tests für Autos
Version 1.0.0-alpha01
24. März 2021
androidx.car.app:app-testing:1.0.0-alpha01
wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Dies ist die erste Jetpack-Version der zuvor geschlossenen Testbibliothek. In unseren Beispielen erfahren Sie, wie Sie diese Bibliothek in Ihren Tests verwenden.
Neue Funktionen
- Die Controller für die Modellklassen wurden entfernt. Modellgetter sind jetzt Teil der öffentlichen API-Oberfläche, wodurch Werte validiert werden können, die in den Buildern festgelegt wurden.
- Die vorherige
CarAppServiceController
wurde durch die neueSessionController
ersetzt, um die Logik für die Lebensdauer der Verbindung zu den Hots zu testen.
Version 1.0.0
Version 1.0.0
21. April 2021
androidx.car.app:app:1.0.0
wird veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von 1.0.0
- Anfang April haben wir angekündigt, dass Apps mit
androidx.car.app:app:1.0.0-rc01
im Produktionskanal veröffentlicht werden können. Die Version 1.0.0 der Car App Library ist jetzt stabil und vollständig mit Android Auto 6.1 und höher kompatibel. - Im Entwicklungsleitfaden finden Sie weitere Informationen dazu, wie Sie mit der Bibliothek Navigations-, Park- und Lade-Apps für Android Auto erstellen.
Fehlerkorrekturen
- Behebung einer Ausnahme, die beim Einblenden eines
Screen
beim Start auftritt (70aae1, b/184664896) - Behoben:
ON_DESTROY
auf einerSession
wurde nach derON_DESTROY
einerScreen
angezeigt (0ceecb, b/183696617)
Version 1.0.0-rc01
24. März 2021
androidx.car.app:app:1.0.0-rc01
wird veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler bei der Race-Bedingung wurde behoben, bei dem
NavigationManagerCallback#onStopNavigation
aufgerufen wurde, nachdem der Rückruf gelöscht wurde. Das passiert, wenn der Rückruf gelöscht wurde, bevor der Rückrufausführer tatsächlich ausgeführt wurde (I7fc5e, b/181143772) - Ein Problem wurde behoben, bei dem die App explizit eine Abhängigkeit von
lifecycle-common-java8
(I8b8c8) übernehmen musste. - Ein
NullPointerException
wurde behoben, das geworfen wurde, wenn die App einenstopNavigation
-Aufruf empfing, nachdem sie bereits einen Rückruf entfernt hatte (Ib8b89, b/181143772) - Verbesserungen, damit keine Aufrufe an die App gesendet werden, wenn ihr Lebenszyklus nicht mindestens den Status
CREATED
hat (I86965, b/179800224, b/177921120) - Ein Problem wurde behoben, durch das eine ungültige Mindest-API im Manifest der App zu einer ANR auf dem Host geführt hat. (Iffedd, b/174231592)
Version 1.0.0-beta01
24. Februar 2021
androidx.car.app:app:1.0.0-beta01
wird veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Dies ist die erste Jetpack-Version der zuvor proprietären Bibliothek und ist mit Android Auto 6.1 oder höher kompatibel. Im Entwicklungsleitfaden finden Sie weitere Informationen zum Erstellen von Auto-Apps mit der Bibliothek.
Neue Funktionen
- Einführung von
GridTemplate
, mit dem in Ihrer App eine Liste von UI-Elementen in einem Rasterlayout angezeigt werden kann. - Einführung einer
CarAppService.createHostValidator
-Methode, um zu prüfen, ob eine Hostverbindung von einer vertrauenswürdigen Quelle stammt (z. B. Android Auto). - Eine
CarAppExtender.Builder.setColor
API wurde hinzugefügt. (b/174231592)
Fehlerkorrekturen
- Ein Problem wurde behoben, durch das beim sequenziellen Aufrufen von Bildschirmen die falsche
Screen
fortgesetzt wurde. (b/177590791)