Google Pixel Auto

Apps mit Vorlagen für Android Auto und Android Automotive OS entwickeln
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.

Neues Problem erstellen

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 Framework Notification.Builder zu erweitern, anstatt nur NotificationCompat.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 Klasse TabContents.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 in TabTemplate 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 und MapTemplate 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 der onDestroy-Methode von BaseCarAppActivity 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 und PlaceListNavigationTemplate und Empfehlung der neuen MapWithContentTemplate (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 aus MapWithContentTemplate (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 in ListTemplate hinzufügen, headerAction, headerTitle und actionStrip verwerfen (I7ae01)
  • Einstellung von title, headerAction und actionStrip in GridTemplate und Unterstützung für Header hinzufügen (I41a9c)
  • Entfernen der Anforderung für Level 7 für experimentelle APIs: Symbol, GridTemplateGetter/Setter für Artikelgröße und Bildform, GridItemMethoden zum Abrufen/Festlegen des Logos. (Id71eb)
  • Einstellung von title, headerAction und actionStrip in PaneTemplate, neue Unterstützung für Header 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 in MessageTemplate hinzugefügt Unterstützung für ActionStrip, headerAction und title 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 aus ConversationItem 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 aus ConversationItem 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 Projekts android.suppressUnsupportedCompileSdk=34 hinzufügen, um die Warnung vorübergehend zu unterdrücken.

Neue Funktionen

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 in set/get ContentTemplate (Ica036) geändert
  • Der Vorlagenparameter wäre jetzt @NonNull. Aktualisierte MapWithContentTemplate API-Dokumentation (I0f8ed)
  • Das @ExperimentalCarApi-Tag für Aktionen in ListTemplate wird für die Einführung in CAL 1.4 entfernt (I2cfcb)
  • Entfernt das @ExperimentalCarApi-Tag für TabTemplate (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 zu GridTemplate hinzufügen (Ibf431)
  • Fügen Sie GridTemplate die Eigenschaft ItemSize 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 überladene setImage()-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 einem GridItem-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() und hashCode() für ConversationItem und CarMessage überschreiben (I6fd10)
  • ConversationItem.mMessages-Validierung verbessern (nicht null, nicht leer) (Iafc51)
  • @Keep-Anmerkungen zu ConversationItem-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.

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 und MapTemplate in einem kartenbasierten Auswahlbildschirm befindet. Aktualisieren Sie dazu die Navigationsinformationen über NavigationManager.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() zu ActionsConstraints hinzu. Es war möglich, dass Action OnClickDelegate() auf Aktionen festlegte, mit Ausnahme der Standardsymboltypen. (TYPE_APP_ICON, TYPE_BACK und TYPE_PAN) (I3c745)

Fehlerkorrekturen

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 der NavigationTemplate (I163a7, I5ad70)
  • API-Level 5: Neue Header- und MapController-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 und androidx.car.app.category.CHARGING eingestellt) (I59da1)

API-Änderungen

  • API-Ebene 5: Neue onClick-Methode in der SurfaceCallback-Benutzeroberfläche, die das Tippen auf die Karte ermöglicht (Ia9777)
  • API-Level 5: Neue Flags Action.FLAG_IS_PERSISTENT und Action.FLAG_DEFAULT zur Beschreibung von Actions (I96318, I5ad70)
  • API-Ebene 5: neuer aktivierter/deaktivierter Status für die Komponenten Action, Row und Toggle (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 über setHeader auf der PlaceListNavigationTemplate.Builder und RoutePreviewNavigationTemplate.Builder bevorzugt. Die vorhandenen Methoden setTitle und setHeaderAction werden eingestellt. (I30e6a)
  • API-Level 5: Neue setOnContentRefreshListner-Methode für PlaceListMapTemplate.Builder und PlaceListNavigationTemplate.Builder zur Verwendung mit Implementierungen der neuen OnContentRefreshListner-Schnittstelle.
  • API-Ebene 5: Neue setTripText und setTripIcon in der TravelEstimate.Builder zum Anpassen der Karte mit Reisezeit- und -kostenschätzung (Idcc6d, Ic620d)
  • Unterstützung für CarIconSpans im Titel der PaneTemplate hinzufügen (Ia1ee0)
  • Unterstützung für CarIconSpan im Titel und Text von Row hinzufügen (Ic1e3c)
  • Karten-ActionStrips 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 und SignInTemplate (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 von STATUS_UNAVAILABLE verwendet wird (Ic9444)
  • Prüfen, ob Display vorhanden ist, bevor Oberfläche erstellt wird (Ice027a)
  • Behebung eines Fehlers bei CarValue.equals() im Zusammenhang mit STATUS_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 KartenActionStrip in PlaceListNavigationTemplate und RoutePreviewNavigateTemplate werden in den nächsten Android Auto- und Android 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 experimentelle toString()-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 in Pane 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 und RoutePreviewNavigationTemplate 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 und LongMessageTemplate, 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: CarHardwareManagerMit 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 explizit TestCarContext 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 der CarAppExtender 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 von Desktop 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 und ScreenController wurden in einer einzigen moveToState-Methode zusammengeführt (I1ed00)
  • CarContext#getHostInfo() (I8977e) wurde hinzugefügt
  • Verworfene Felder wurden entfernt. (I67168)
  • SessionController und ScreenController wurden aktualisiert, um Konstruktoren direkt zu übergeben (Iabf22)
  • PinSignInMethod.Builder und ProviderSignInMethod.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 in OnCarDataAvailableListener umbenannt (I518ca)
  • Methodenamen und Javadoc für CarInfo, Speed und Mileage aktualisiert. (I86672)
  • Toll wurde in TollCard umbenannt. (I3e7c8)
  • Die Einstellung von PinSignInMethod.getPin wurde entfernt. Es wird durch PinSignInMethod.getPinCode (I996ce) ersetzt.
  • OnInputCompletedListener wurde entfernt (durch InputCallback ersetzt). (Ib5be1)
  • Für PinSignInMethod wird jetzt CharSequence anstelle von String verwendet (I275d5)

Fehlerkorrekturen

  • Javadoc-Fehlerkorrekturen für Auto-Hardware. (I2abbc)

Externer Beitrag

Bekannte Probleme

  • Wenn du in der SignInTemplate die InputSignInMethod verwendest, kann das zu einer NullPointerException 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 und LongMessageTemplate, 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 und OnRequestPermissionsCallback in OnRequestPermissionsListener 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 auf MessageTemplate hinzugefügt (Ida657)
  • setLoading wurde zu MessageTemplate hinzugefügt. (I2a4b5)
  • ConnectionToCar in CarConnection umbenannt (Ife9bd)
  • NavigationTemplate wurde geändert, sodass eine explizite PanModeDelegate 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 Schwenkmodus Action (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 PendingIntents 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 und LongMessageTemplate 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 einem Session nach dem ON_DESTROY eines Screen 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, um ForegroundColorSpan 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 neue SessionController 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 einer Session wurde nach der ON_DESTROY einer Screen 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 einen stopNavigation-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

Fehlerkorrekturen

  • Ein Problem wurde behoben, durch das beim sequenziellen Aufrufen von Bildschirmen die falsche Screen fortgesetzt wurde. (b/177590791)