Aplikacja samochodowa
Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja Beta | Wersja alfa |
---|---|---|---|---|
16 lipca 2025 r. | 1.7.0 | - | - | 1.8.0-alpha02 |
Deklarowanie zależności
Aby dodać zależność od biblioteki aplikacji na samochody, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle
aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.car.app:app:1.7.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.7.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.7.0" // For testing testImplementation "androidx.car.app:app-testing:1.7.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.7.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.7.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.7.0") // For testing testImplementation("androidx.car.app:app-testing:1.7.0") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.8
Wersja 1.8.0-alpha02
18 czerwca 2025 r.
Zostanie wycofaneandroidx.car.app:app-*:1.8.0-alpha02
Wersja 1.8.0-alpha02 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy obsługę tagu
Action.MEDIA_PLAYBACK
, który wyświetla wskaźnik na podstawie stanu odtwarzania multimediów. - Dodaliśmy obsługę kontrolowania pozycji przewijania użytkownika po odświeżeniu
SectionedItemTemplate
.
Zmiany w interfejsie API
- Dodano obsługę zapisywania pozycji przewijania użytkownika w
SectionedItemTemplate
między odświeżeniami. (Ia4c51) - Zaktualizowano działanie
MEDIA_PLAYBACK
, aby włączyć je w przypadku działania na końcu wiersza (I05cc4) - Dodawanie nowego typu działania (I6cc5a)
- Dodaj
CarAppExtender#addAction(Action)
, aby do elementuCarAppExtender
można było dodać dowolny typ działania. (Idc4d7) - Udostępniliśmy funkcję
SectionedItemTemplate
w przypadku interfejsu API 8 i nowszych. (I9a079)
Wersja 1.8.0-alpha01
20 maja 2025 r.
Zostanie wycofaneandroidx.car.app:app-*:1.8.0-alpha01
Wersja 1.8.0-alpha01 zawiera te zmiany.
Nowe funkcje
Wszystkie funkcje są tymczasowo dostępne tylko w Androidzie Auto. W AAOS będą używane te same interfejsy API.
- Dodano kategorię Multimedia, aby umożliwić tworzenie aplikacji niestandardowych jako alternatywy dla aplikacji opartych na
MediaBrowse
. - Dodano szablon odtwarzania, który umożliwia sterowanie najważniejszymi działaniami w widoku odtwarzania multimediów (dostępny tylko w aplikacjach multimedialnych).
- Dodano pełną obsługę szablonu elementu podzielonego na sekcje w Androidzie Auto, co umożliwia łączenie podsekcji składających się z list lub siatek.
- Dodaliśmy rozmiar bardzo duży jako dodatkowy rozmiar elementów siatki.
Zmiany w interfejsie API
- Dodawanie dodatkowej opcji rozmiaru do elementów siatki (I35b58)
- Dodaje kategorię i uprawnienia dla aplikacji multimedialnych do biblioteki aplikacji samochodowych (I8e100).
- Dodano nowy interfejs API, który umożliwia aplikacjom wykrywanie, czy obsługiwana jest kategoria multimediów
CarAppLibrary
(Ic4b08). - Dodano
OnItemVisibilityChangeListener
do sekcji. (I2c2fd) - Dodano
Mileage#getOdometerKilometers
i wycofanoMileage#getOdometerMeters
(Ic91af)
Poprawki błędów
- Poprawienie literówki w dokumentacji Javadoc klasy
CarIcon.setTint
(Iabd72) - Zaktualizowaliśmy dokumentację
Row.Builder#setNumericDecoration
, aby odzwierciedlić, że 1 działanie + dekoracja numeryczna nie jest obsługiwane, ale 0 lub 2 działania + dekoracja numeryczna już tak. (Ic0b08) - Dodano pole koloru tła ikony plakietki dla elementów siatki. (I2b6ae)
Wersja 1.7
Wersja 1.7.0
16 lipca 2025 r.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0
Wersja 1.7.0 zawiera te zmiany.
- To pierwsza wersja stabilna, która zawiera poprawkę CVE-2024-10382, wprowadzoną w wersji beta03. Jeśli używasz wersji starszej niż 1.7-beta03, zaktualizuj ją, aby móc korzystać z tej wersji.
Wersja 1.7.0-rc01
15 stycznia 2025 r.
androidx.car.app:app-*:1.7.0-rc01
nie zawiera żadnych istotnych zmian w porównaniu z wersją beta03. Wersja 1.7.0-rc01 zawiera te zmiany.
- To pierwsza wersja RC, która zawiera poprawkę CVE-2024-10382, wprowadzoną w wersji beta03. Jeśli używasz wersji starszej niż 1.7-beta03, zaktualizuj ją, aby móc korzystać z tej wersji.
Wersja 1.7.0-beta03
13 listopada 2024 r.
Usunięto lukę w zabezpieczeniach i inne ogólne błędy. Jeśli używasz starszej wersji, zaktualizuj ją, aby móc korzystać z tej wersji.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0-beta03
Wersja 1.7.0-beta03 zawiera te zmiany.
Zmiany w interfejsie API
- Zaktualizuj kod serializacji / deserializacji CAL, aby obsługiwał tylko obiekty, które mają zadeklarowaną adnotację
@CarProtocol
. (Ic730e) - Typu
CarAppExtender
można teraz używać do rozszerzania strukturyNotification.Builder
, a nie tylkoNotificationCompat.Builder
. (Id3ad7) - Dodaj
KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LIST
dodatkowo. (I201f9) - Wycofaj pusty konstruktor Builder w
ConversationItem
i zastąp go konstruktorem, który przyjmuje wymagane parametry. Dodaje też sprawdzenie, które chroni przed pustymi wiadomościami. (Ic8221)
Poprawki błędów
- Sprawdź, czy mapa
PlaceList
używa tytułu nagłówka w formie ciągu znaków (tylko tekst). (Ic992f) - Ta biblioteka używa teraz adnotacji o wartości null JSpecify, które są używane w typach. Deweloperzy korzystający z języka Kotlin powinni używać tego argumentu kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict
(jest to domyślne ustawienie od wersji 2.1.0 kompilatora Kotlin). (Ib5367, b/326456246)
Wersja 1.7.0-beta02
18 września 2024 r.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0-beta02
Wersja 1.7.0-beta02 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj
KEY_ROOT_HINT_MEDIA_HOST_VERSION
dodatkowo (I8796b) - Zastąp klasę
TabContents.Api8Builder
konstruktorem@ExperimentalCarApi
w klasieTabContents.Builder
(I26fbe) - Dodaj działanie intencji i dodatki do
CarMediaApp
(I50782) - Oznaczanie interfejsów API do obsługi wiadomości jako nieeksperymentalnych (I0b070)
- Dodanie zdalnego wczytywania elementów do
SectionedItemTemplate
(umożliwia wczytywanie długich list bez awarii) (I0d122) - Dodaj
SectionedItemTemplate
do listy obsługiwanych szablonów wTabTemplate
w interfejsie API 8. (Idc5d6)
Poprawki błędów
- Usunęliśmy ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsu API podczas korzystania z R8 z AGP 7.3 lub nowszym (np. R8 w wersji 3.3) oraz w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszego (np. D8 w wersji 8.1). Klienci, którzy nie korzystają z AGP, powinni zaktualizować D8 do wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (I9496c, b/345472586)
Wersja 1.7.0-beta01
26 czerwca 2024 r.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0-beta01
Wersja 1.7.0-beta01 zawiera te commity. Funkcje są takie same jak w wersji alfa01, które zostały powtórzone poniżej:
Nowe funkcje
- Mapa z treściami: nowy szablon zawierający obszar mapy i szablon treści, który obecnie może być listą, siatką, panelem lub wiadomością.
- Funkcje
RoutePreview
,PlaceListNavigation
iMapTemplate
zostały wycofane. Szablony będą nadal działać bez zmian. - Przykładowe aplikacje zostały zaktualizowane, aby zamiast wycofanych szablonów pokazywać użycie
MapWithContent
.
- Funkcje
- Element rozmowy: nowe interfejsy API do wyświetlania rozmów (komunikatory, SMS-y) i odczytywania informacji przez Asystenta w samochodzie.
- Wymiary pojazdu: nowy interfejs API do pobierania wymiarów pojazdu (obecnie dane w AAOS).
Zmiany w interfejsie API
- Dodaj tag
@ExperimentalCarApi
doMediaPlaybackTemplate.Builder
. (Ic1957) - Dodaje nowy
SectionedItemTemplate
w wersji eksperymentalnej. (I5958a) - Przedstawiamy
CarAppApiLevel 8
(I3fa22) - Dodaje
MediaPlaybackTemplate
do wyświetlania treści podczas odtwarzania multimediów w bibliotece aplikacji samochodowych. (I3c10d) - Dodano nowy interfejs API, który umożliwia aplikacjom wykrywanie, czy system obsługuje dźwięk w tle podczas jazdy (I0f868).
Poprawki błędów
- Rozwiązuje problemy z wyciekami pamięci i awariami w kodzie klienta CAL oraz w przykładowej aplikacji nawigacyjnej CAL. (I55e04)
- Zastąp
requireNotNull instances
w metodzieBaseCarAppActivity
wonDestroy
sprawdzaniem wartości null, aby uniknąć awarii. (Iec676)
Wersja 1.7.0-alpha02
17 kwietnia 2024 r.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0-alpha02
Wersja 1.7.0-alpha02 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy flagi wycofania w przypadku szablonów opartych na mapach, które będą w przyszłości obsługiwane przez szablon
MapWithContent
.
Zmiany w interfejsie API
- Wycofanie starych wersji
MapTemplate
,RoutePreviewNavigationTemplate
,PlaceListNavigationTemplate
i zachęcanie do korzystania z nowej wersjiMapWithContentTemplate
(Ib0a08)
Wersja 1.7.0-alpha01
3 kwietnia 2024 r.
Zostanie wycofaneandroidx.car.app:app-*:1.7.0-alpha01
Zmieniliśmy schemat wersji biblioteki, aby był zgodny z aktywną wersją CarApi. Zrobiliśmy to, aby zmniejszyć zamieszanie związane ze schematem nazewnictwa na podstawie opinii deweloperów. W związku z tym pominiemy wersje 1.5 i 1.6 i przejdziemy bezpośrednio do wersji 1.7. Wersja 1.7.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Mapa z treściami: nowy szablon o nazwie
MapWithContent
, który obsługuje listę, siatkę, panel i wiadomość jako treści na mapie.RoutePreview
,PlaceListNavigation
, szablony map zostały wycofane.- Przykładowe aplikacje zostały zaktualizowane, aby pokazywać działanie wycofanych szablonów za pomocą
MapWithContent
.
- Element rozmowy: nowe interfejsy API do wyświetlania rozmów (komunikator internetowy, SMS) i odczytywania informacji przez Asystenta w samochodzie.
- Wymiary pojazdu: nowy interfejs API do pobierania wymiarów pojazdu (obecnie dane w AAOS).
Zmiany w interfejsie API
- Oznacz typ obrazu w bardzo małym wierszu jako eksperymentalny (I5184b)
- Dodano interfejs API
CarInfo#fetchExteriorDimensions
, który umożliwia dostęp do informacji o wymiarach zewnętrznych pojazdu, takich jak wysokość, szerokość itp. (Ia40c5). - Usunięto tag
ExperimentalAPI
zMapWithContentTemplate
(I66db8) - Zaktualizuj parametr
GridItem#setTitle
, aby dopuszczał wartość null. (I3d610) - Interfejs API
GetHeader
nie wymaga interfejsu API 7, ponieważ jest wstecznie zgodny (I8c812). - Dodanie obsługi
Header
wListTemplate
, wycofanieheaderAction
,headerTitle
,actionStrip
(I7ae01) - Wycofaj
title
,headerAction
,actionStrip
wGridTemplate
i dodaj obsługęHeader
(I41a9c) - Usunięcie wymagania dotyczącego poziomu 7 w przypadku eksperymentalnych interfejsów API: gettery/settery rozmiaru elementu i kształtu obrazu
GridTemplate
, metody pobierania/ustawiania elementuGridItem
. (Id71eb) - Wycofanie
title
,headerAction
,actionStrip
wPaneTemplate
, dodanie obsługi nowegoHeader
(I23154) - Zmieniono dane telemetryczne Centrum multimediów z
BroadcastReceiver
na Przeglądaj działanie niestandardowe. (I4185f) - Dodaliśmy obsługę atrybutu
Header
wMessageTemplate
. Wycofano obsługęActionStrip
,headerAction
ititle
. (Ie2de8) - Modyfikowanie widoczności stałej alertu (Icf8a8)
- Usuń atrybut
isLoading
z szablonu nadrzędnego (I651e6) - Dodaj dodatkowe informacje, aby powiadomić aplikacje multimedialne o głównych parametrach interfejsu (I85ca2)
- Dodaj funkcję statystyk centrum multimediów do
MediaExtensions
(I7ce28) - Dodano opcję bardzo małego obrazu w wierszach. (I72c03)
Poprawki błędów
- Zaktualizuj dokumentację javadoc w
ConversationItem
, aby podać, że wiadomości powinny być sortowane od najstarszych do najnowszych. (I77a2a) - Aktualizacja logiki obcinania
ListTemplate
w celu usuwania najstarszych wiadomości zConversationItem
(Ie0a61)
Wersja 1.4
Wersja 1.4.0
29 maja 2024 r.
Zostanie wycofaneandroidx.car.app:app-*:1.4.0
Wersja 1.4.0 jest promocją wersji 1.4.0-rc02.
Ważne zmiany od wersji 1.3.0
- Renderowanie mapy w klastrze przyrządów w aplikacjach do nawigacji
- Nowy szablon karty dla lepszego układu i użyteczności aplikacji
- Obsługa adaptacyjnych limitów zadań
- Działania dodatkowe dotyczące elementów listy
Wersja 1.4.0-rc02
13 grudnia 2023 r.
Zostanie wycofaneandroidx.car.app:app-*:1.4.0-rc02
Wersja 1.4.0-rc02 zawiera te zmiany. Tylko drobne poprawki
Poprawki błędów
- Zaktualizuj dokumentację Javadoc w
ConversationItem
, aby podać, że wiadomości powinny być sortowane od najstarszych do najnowszych (I77a2a). - Aktualizacja logiki obcinania
ListTemplate
w celu usuwania najstarszych wiadomości zConversationItem
(Ie0a61)
Wersja 1.4.0-rc01
1 listopada 2023 roku
Wersja androidx.car.app:app-*:1.4.0-rc01
nie zawiera znaczących zmian. Wersja 1.4.0-rc01 zawiera te commity.
Wersja 1.4.0-beta02
20 września 2023 r.
Zostanie wycofaneandroidx.car.app:app-*:1.4.0-beta02
Wersja 1.4.0-beta02 zawiera te zmiany. Jest to prawie identyczna wersja jak beta01, ale obniża wymaganie compileSdk
do 33.
Poprawki błędów
- Naprawiliśmy błąd polegający na tym, że ekrany wczytywania na kartach nie były wyświetlane prawidłowo. (cae860)
Wersja 1.4.0-beta01
9 sierpnia 2023 r.
Zostanie wycofaneandroidx.car.app:app-*:1.4.0-beta01
Wersja 1.4.0-beta01 zawiera te zmiany.
Uwaga: wersja 1.4-beta01 wymaga compileSdk34, która jest nadal w fazie rozwoju. Wersja 1.4-beta02 rozwiąże ten problem. Możesz też dodać
android.suppressUnsupportedCompileSdk=34
do plikusettings.gradle
projektu, aby bezpiecznie tymczasowo pominąć ostrzeżenie.
Nowe funkcje
- Renderowanie mapy w klastrze przyrządów w aplikacjach do nawigacji
- Nowy szablon karty, który poprawia układ i użyteczność aplikacji
- Obsługa adaptacyjnych limitów zadań
- Działania dodatkowe dotyczące elementów listy
Zmiany w interfejsie API
- Zobacz alpha02
Wersja 1.4.0-alpha02
26 lipca 2023 r.
Zostanie wycofaneandroidx.car.app:app-*:1.4.0-alpha02
Wersja 1.4.0-alpha02 zawiera te zmiany.
- Wersja Alpha02 ma przygotować użytkowników na nadchodzącą wersję beta01.
Nowe funkcje
- Renderowanie mapy w klastrze przyrządów w przypadku aplikacji do nawigacji
- Dodano karty aplikacji, aby ulepszyć układ
- Dodano opcje renderowania szablonu Lista / Siatka
- Dodaliśmy nowe kategorie Pogoda i Komunikacja.
- Przeniesienie kilku interfejsów API do następnej wersji CarApi 7
Zmiany w interfejsie API
- Dodawanie pól multimedialnych do
CarMessage
(I5aaf6) - Dodaje działania niestandardowe do
ConversationItem
w Bibliotece aplikacji na samochody (Ie5ed6) - Dodaj elementy dodatkowe, aby wskazać, że element multimedialny jest odtwarzany w formacie dźwięku przestrzennego, i wyświetlić logo formatu treści (Icb5bb).
- Dodaj nowy typ działania
ActionsConstraints
API, aby obsługiwać przycisk tworzenia. (I31661) - Wykonano
set/getTemplate
jakoset/get ContentTemplate
(Ica036) - Parametr szablonu będzie teraz miał wartość
@NonNull
. ZaktualizowanoMapWithContentTemplate
dokumentację interfejsu API (I0f8ed) - Usuwa tag
@ExperimentalCarApi
dla działań wListTemplate
w celu wprowadzenia w CAL 1.4 (I2cfcb) - Usuwa tag
@ExperimentalCarApi
dlaTabTemplate
(Ifcb82) - Usuń adnotacje
@ExperimentalCarApi
z działań alternatywnych i dekoracji wiersza (I8487e) - Dodaje identyfikator treści aktywnej karty do elementu
TabTemplate
i wycofuje stan aktywny na kartach (I96932). - Dodaj usługę
ItemImageShape
do usługiGridTemplate
(Ibf431) - Dodaj właściwość
ItemSize
do właściwościGridTemplate
, która kontroluje rozmiar elementu siatki zgodnie z względnymi przedziałami małych, średnich i dużych wartości. (Icdb3b) - Udostępnij interfejs API deweloperom, aby mogli uzyskać kopię bieżącego stosu ekranów. (I48107)
- Dodaje kategorię aplikacji pogodowych do biblioteki aplikacji samochodowych (I2be44)
- Dodanie kategorii aplikacji do dzwonienia do biblioteki aplikacji samochodowych (Icab33)
- Zastąpiono
GridItem.Builder#setBadge()
przeciążonymi metodamisetImage()
(Id2000) - Dodawanie właściwości ikony do plakietki (I629b2)
- Dodano metodę ustawiania koloru tła plakietki z kropką (I6411c)
- Dodaj właściwość Badge do elementu
GridItem
, aby umożliwić wyświetlanie plakietki na obrazieGridItem
. (I95de7) - Dodano eksperymentalny obiekt Badge, który będzie reprezentować odznakę wyświetlaną nad obrazem. (I9878d)
Wersja 1.4.0-alpha01
22 lutego 2023 roku
Zostanie wycofaneandroidx.car.app:app-*:1.4.0-alpha01
Wersja 1.4.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaje działania najwyższego poziomu do
GridTemplate
w bibliotece aplikacji na samochody (Id0191) - Dodaje działania najwyższego poziomu do
ListTemplate
w bibliotece aplikacji samochodowych (I9efab) - Dodawanie dodatków w celu połączenia napisów lub opisu elementu multimedialnego z innymi elementami multimedialnymi (Ic84bf)
- Zaktualizuj poziom interfejsu API dla działań w wierszu do poziomu 6. (Ie0a69)
- Dodawanie wywołań zwrotnych przesyłania wiadomości do A4C (Ie3986)
Poprawki błędów
- Dodaj brakujące odwołania do dokumentacji JavaDoc dla
CarMessage
. (I5db1c) - Zastąp
equals()
ihashCode()
wartościamiConversationItem
iCarMessage
(I6fd10) - Ulepszanie weryfikacji
ConversationItem.mMessages
(wymaganie wartości niezerowej i niepustej (Iafc51) - Dodawanie adnotacji
@Keep
do pólConversationItem
(I5d250) - Zaktualizowano dokumentację Java dla dekoracji wiersza i działań dodatkowych. (I000b6)
Wersja 1.3
Wersja 1.3.0-rc01
7 grudnia 2022 r.
Zostanie wycofaneandroidx.car.app:app-*:1.3.0-rc01
Wersja 1.3.0-rc01 zawiera te zmiany.
- Drobne poprawki błędów z wersji beta01. Bez większych zmian.
Wersja 1.3.0-beta01
7 września 2022 roku
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
i androidx.car.app:app-testing:1.3.0-beta01
są zwalniane. Wersja 1.3.0-beta01 zawiera te zmiany.
- Aplikacje samochodowe utworzone za pomocą tej biblioteki mogą teraz trafić do Sklepu Play przy użyciu poziomu interfejsu API 5 (więcej informacji znajdziesz w naszym przewodniku dla deweloperów). Funkcje oznaczone poziomem interfejsu API 5 lub niższym są zgodne zarówno z Androidem Auto 8.1 lub nowszym, jak i z hostem aplikacji Google Automotive w wersji 1.4 lub nowszej.
Nowe funkcje
Oprócz funkcji dodanych w bibliotece aplikacji na samochody w wersji 1.3.0-alpha01 w wersji beta01 dodano te funkcje (wszystkie zmiany dotyczą tylko hosta i nie wiążą się ze zmianami w interfejsie API):
- Pływający pasek nawigacyjny będzie nadal widoczny, nawet gdy użytkownik będzie na ekranie wyboru opartym na mapie w
PlaceListNavigationTemplate
,RoutePreviewNavigationTemplate
iMapTemplate
. Możesz to zrobić, aktualizując informacje o nawigacji w sekcjiNavigationManager.updateTrip()
. - Włącz przycisk działania za pomocą ikony
FLAG_DEFAULT
, aby wyświetlać animację limitu czasu. Po upływie limitu czasu ten przycisk zostanie kliknięty domyślnie. ([API 5 - All Templates]
) - Tekst podrzędny
Row
s nie jest obcinany, gdy samochód jest zaparkowany, ale jest obcinany do 2 wierszy podczas jazdy. ([API 5 - All Templates]
) - Obsługa stanu wyłączonego w przypadku
Action
,Toggle
,Row
([API 5 - All Templates]
)
Zmiany w interfejsie API
- Złagodzenie ograniczeń na liście
MapTemplate
, aby obsługiwać listy z możliwością wyboru (I961ed) - Usuń ograniczenie dotyczące działań w nagłówku, aby umożliwić używanie niestandardowych ikon. (Iad28f)
- Dodaj ograniczenie
setOnClickListenerAllowed()
doActionsConstraints
. W miejscach, w których dozwolone jest ustawienieAction
naOnClickDelegate()
w przypadku działań innych niż standardowe typy ikon. (TYPE_APP_ICON
,TYPE_BACK
iTYPE_PAN
) (I3c745)
Poprawki błędów
- Dodano zgodność Android Automotive Template Host w wersji 1.4 lub nowszej z zakrzywionymi wyświetlaczami (
[Host change]
).
Wersja 1.3.0-alpha01
27 lipca 2022 roku
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
i androidx.car.app:app-testing:1.3.0-alpha01
są zwalniane. Wersja 1.3.0-alpha01 zawiera te zmiany.
Funkcje oznaczone poziomem interfejsu API 5 są zgodne z Androidem Auto w wersji 7.9 i nowszej.
Nowe funkcje
- Poziom API 5: nowy
MapTemplate
, którego aplikacje do nawigacji mogą używać do wyświetlania panelu lub listy treści obok mapy (If5826, If44b8). - Poziom interfejsu API 5: nowy interfejs API
CarAudioRecord
umożliwiający nagrywanie dźwięku za pomocą mikrofonu pojazdu hosta (I5e71a) - Poziom interfejsu API 5: nowy interfejs API
SuggestionManager
, który umożliwia aplikacjom przekazywanie sugestii do hosta (I5c103) - Poziom API 5: nowy interfejs
Alert
API do wyświetlania powiadomień kontekstowych na urządzeniuNavigationTemplate
(I163a7, I5ad70) - Poziom API 5: nowe komponenty
Header
iMapController
ułatwiające ponowne użycie w szablonach (If5826) - Dodano
androidx.car.app.category.POI
jako kategorię umożliwiającą korzystanie z aplikacji z ważnymi miejscami (wycofano kategorieandroidx.car.app.category.PARKING
iandroidx.car.app.category.CHARGING
) (I59da1)
Zmiany w interfejsie API
- Poziom interfejsu API 5: nowa metoda
onClick
w interfejsieSurfaceCallback
umożliwiająca interakcję z mapą przez kliknięcie (Ia9777) - Poziom API 5: nowe flagi
Action.FLAG_IS_PERSISTENT
iAction.FLAG_DEFAULT
do opisywaniaAction
s (I96318, I5ad70) - API na poziomie 5: nowy stan włączony/wyłączony dla komponentów
Action
,Row
iToggle
(obsługa hosta pojawi się w wersji biblioteki 1.3.0-beta01) (Id8a09) - Poziom interfejsu API 5: preferowanie nowego komponentu
Header
za pomocąsetHeader
w przypadkuPlaceListNavigationTemplate.Builder
iRoutePreviewNavigationTemplate.Builder
, wycofanie dotychczasowych metodsetTitle
isetHeaderAction
(I30e6a). - Poziom interfejsu API 5: nowa metoda
setOnContentRefreshListner
w klasachPlaceListMapTemplate.Builder
iPlaceListNavigationTemplate.Builder
do użycia w implementacjach nowego interfejsuOnContentRefreshListner
. - Poziom API 5: nowe parametry
setTripText
isetTripIcon
w parametrzeTravelEstimate.Builder
umożliwiające dostosowanie karty szacowania podróży (Idcc6d, Ic620d) - Dodaliśmy obsługę właściwości
CarIconSpan
w tytule elementuPaneTemplate
(Ia1ee0) - Dodaliśmy obsługę właściwości
CarIconSpan
w tytule i tekście elementuRow
(Ic1e3c) - Mapy
ActionStrip
mogą teraz zawierać maksymalnie 4 działania (If3522). - Aktualizacja poziomu interfejsu Car App API do 5 (I26b8e)
- Nagłówki i tytuły są teraz opcjonalne w przypadku typów
PlaceListMapTemplate
,PlaceListNavigationTemplate
,RoutePreviewNavigationTemplate
,GridTemplate
,ListTemplate
,LongMessageTemplate
,MessageTemplate
,PaneTemplate
iSignInTemplate
(I2078d, Icadde)
Poprawki błędów
- Zaktualizowano reguły określania rozmiaru obrazu
PaneTemplate
, aby były kwadratowym polem ograniczającym (Idd72e). - Rozwiązaliśmy wyjątek, który występuje, gdy stos ekranów jest modyfikowany po wywołaniu funkcji
State.DESTROYED
. (I3c8eb) - Dodano sprawdzanie wartości null podczas pobierania ikony aplikacji (I3f710)
- Aktualizacja interfejsu Car Hardware API, aby domyślnie używał
STATUS_UNKNOWN
zamiastSTATUS_UNAVAILABLE
(Ic9444) - Sprawdzanie, czy wyświetlacz istnieje przed utworzeniem powierzchni (Ice027a)
- Naprawiono błąd
CarValue.equals()
związany zSTATUS_UNIMPLEMENTED
(I24451)
Wersja 1.2
Wersja 1.2.0
9 listopada 2022 r.
Zostanie wycofaneandroidx.car.app:app-*:1.2.0
Wersja 1.2.0 zawiera te zmiany.
- Jest to wersja stabilizacyjna, która nie zawiera żadnych zmian w porównaniu z wersją 1.2.0-rc01.
Wersja 1.2.0-rc01
23 marca 2022 r.
Zostanie wycofaneandroidx.car.app:app-*:1.2.0-rc01
Wersja 1.2.0-rc01 zawiera te zmiany.
- Jest to wersja stabilizacyjna, która nie zawiera zmian w interfejsie API w porównaniu z wersją
v1.2.0-beta02
. Dodaliśmy nowe eksperymentalne funkcje (API na poziomie 5), które są przeznaczone dla przyszłych wersji Androida Auto i Androida Automotive.
Poprawki błędów
- Rozwiązaliśmy wyjątek, który występuje, gdy stos ekranów jest modyfikowany po wywołaniu funkcji
State.DESTROYED
. (I3c8eb) - Zaktualizowano interfejs API
CarSensors
, aby wskazać, że nie jest on zaimplementowany w AAOS (Idd57b). - Zaktualizowano
PlaceListMapTempalte.Builder#setCurrentLocationEnabled
, aby wskazać, że do obsługi tej funkcji wystarczy uprawnienie ACCESS_COARSE_LOCATION (I510c2). - Umożliwiliśmy podawanie numeru zjazdu w przypadku manewrów typu „rondo z kątem” (Ife7d1).
Wersja 1.2.0-beta02
26 stycznia 2022 r.
Zostanie wycofaneandroidx.car.app:app-*:1.2.0-beta02
Wersja 1.2.0-beta02 zawiera te zmiany.
Aplikacje samochodowe utworzone za pomocą tej wersji biblioteki i przeznaczone na platformę Android Automotive OS
można teraz publikować na kanale otwartych testów w Sklepie Play. Więcej informacji znajdziesz w przewodniku dla programistów.
Funkcje oznaczone poziomem API 4 lub niższym są zgodne zarówno z Android Auto
7.2+, jak i z nową platformą Android Automotive OS
. Ograniczenia znajdziesz w Known Issues
sekcji poniżej.
Zmiany w interfejsie API
- Dodano eksperymentalny interfejs
setOnContentRefreshListener
API do szablonów POI (I6bf22)
Poprawki błędów
- Naprawiliśmy wyciek pamięci w
CarAppService
, gdy host samochodu odłącza się od usługi. (I5c9ca, b/203594731) - Zaktualizowano dokumentację Javadoc dla
CarAppActivity
, aby uwzględnić wymagania dotyczące trybu uruchamiania singleTask (Id2f95) - Ogranicza błąd wizualny po wznowieniu. (Iff7e0)
Znane problemy
- Mapy
ActionStrip
wPlaceListNavigationTemplate
iRoutePreviewNavigateTemplate
zaczną być dostępne w kolejnych wersjachAndroid Auto
iAndroid Automotive OS
.
Wersja 1.2.0-alpha02
15 grudnia 2021 roku
Zostanie wycofaneandroidx.car.app:app-*:1.2.0-alpha02
Wersja 1.2.0-alpha02 zawiera te zmiany.
Funkcje z adnotacją API na poziomie 4 zostały ulepszone z eksperymentalnych do stabilnych. Obejmuje to m.in. mapy ActionStrip
w PlaceListNavigationTemplate
i RoutePreviewNavigateTemplate
, obraz CarIcon
w Pane
, QRCodeSignInMethod
oraz możliwość ustawiania wskazówek renderowania (np. flag) w Action
.
Nowe funkcje
- W Androidzie Auto w wersji 7.1 lub nowszej limit elementów dla
Pane
został zwiększony z 2 do 4.
Zmiany w interfejsie API
- Dodano eksperymentalną metodę
toString()
doCarUnit
(I36a3b)
Poprawki błędów
- Rozwiązaliśmy problem powodujący błąd w
CarAppPermissionActivity
, jeśli wywołanie zwrotne jest nieaktywne (If9823). - Zmieniono domyślny limit listy
Pane
na 4 (I0068b)
Wersja 1.2.0-alpha01
3 listopada 2021 r.
Zostanie wycofaneandroidx.car.app:app-*:1.2.0-alpha01
Wersja 1.2.0-alpha01 zawiera te zmiany.
Wszystkie nowe v1.2.0
funkcje (API 4+) są obecnie eksperymentalne i kierowane na przyszłe wersje Androida Auto i Androida Automotive OS. Więcej informacji znajdziesz w przewodniku dla programistów.
Zmiany w interfejsie API
- Interfejs API
AutomotiveCarInfo
został oznaczony jako eksperymentalny. (Ia13e5) - Dodano poziom 4 interfejsu Car App Library API (I2a2e7)
- Poziom API 4: dodano obsługę ustawiania
CarIcon
wPane
(Ifcc12). - Poziom API 4: dodano metodę logowania za pomocą kodu QR (Ib623e)
- Poziom API 4: dodano set/getFlags do
Action
(Ic03ab) - Poziom API 4: dodano obsługę przesuwania i powiększania w przypadku
PlaceListNavigationTemplate
iRoutePreviewNavigationTemplate
(I9d8a3).
Poprawki błędów
- Poziom interfejsu API 4: dodanie mechanizmu umożliwiającego aplikacjom wysyłanie aktualizacji lokalizacji do hosta samochodu (I3bad3)
- Rozwiązaliśmy problem polegający na tym, że logika weryfikacji hosta nie znajdowała prawidłowo uprawnienia TEMPLATE_RENDERER (I62618).
Wersja 1.1.0
Wersja 1.1.0
15 grudnia 2021 roku
Zostanie wycofaneandroidx.car.app:app-*:1.1.0
Wersja 1.1.0 zawiera te zmiany.
Jest to wydanie stabilizacyjne, które nie zawiera żadnych zmian w porównaniu z wersją v1.1.0-rc01
. Więcej informacji o nowych funkcjach biblioteki aplikacji na samochody znajdziesz też w informacjach o wersji v1.2.0-alpha02
.
Ważne zmiany od wersji 1.0.0
- Poziom interfejsu API 2:
SignInTemplate
iLongMessageTemplate
, których można używać w przypadku procesów logowania, gdy pojazd jest zaparkowany. - Poziom interfejsu API 2: obsługa interaktywności mapy w ramach
NavigationTemplate
- Poziom API 2: obsługa tekstu o różnej długości, która umożliwia aplikacjom udostępnianie wielu wersji ciągu znaków do wyświetlania w zależności od rozmiaru ekranu samochodu.
- Poziom interfejsu API 3:
CarHardwareManager
może być używany do wysyłania zapytań o dane sprzętowe pojazdu, takie jak model i marka, poziom paliwa i inne czujniki.
Wersja 1.1.0-rc01
3 listopada 2021 r.
Zostanie wycofaneandroidx.car.app:app-*:1.1.0-rc01
Wersja 1.1.0-rc01 zawiera te zmiany.
Jest to wersja stabilizacyjna, która nie zawiera zmian w interfejsie API w porównaniu z wersją v1.1.0-beta01
. Dodaliśmy nowe funkcje eksperymentalne (interfejs API na poziomie 4), które są przeznaczone do przyszłych wersji Androida Auto. Więcej informacji o eksperymentalnych interfejsach API znajdziesz w informacjach o wersji v1.2.0-alpha01
.
Wersja 1.1.0-beta01
1 września 2021 roku
Zostanie wycofaneandroidx.car.app:app-*:1.1.0-beta01
Wersja 1.1.0-beta01 zawiera te zmiany.
Wszystkie funkcje v1.1.0
(API 2+) są w pełni zgodne z Androidem Auto w wersji 6.7 lub nowszej. Więcej informacji znajdziesz w przewodniku dla programistów.
Zmiany w interfejsie API
- Usunięto
Manager
jako interfejs publiczny (Ie381b) - Dodano możliwość ustawienia niestandardowego tła z logo w przypadku prośby o uprawnienia (I74b76)
- Dodano
ScreenManager.getStackSize
(I0b16a) - Usunięto konstruktor
ScreenController
, który jawnie przyjmujeTestCarContext
(Iefebc)
Poprawki błędów
- Dodano sprawdzanie poziomu API podczas tworzenia
CarHardwareManager
(I48f9b) - Dodaliśmy w interfejsie API sprawdzanie nieprawidłowego użycia
CarSpan
(I65ae6). - Rozwiązaliśmy problem, który powodował, że jeśli podczas tworzenia elementu
Screen
został on oznaczony jako ukończony, stos był uszkodzony (I81b13). - Naprawiono problem, w którym
CarNotificationManager.notify
rejestrował błąd w przypadku AutomotiveOS, jeśli wCarAppExtender
(I3633d) występowały działania z ikonami. - Dodano metodę uzgadniania dla aplikacji i hosta, aby ustalić wersję interfejsu API (I7d6f8).
Wersja 1.1.0-alpha02
21 lipca 2021 r.
Zostanie wycofaneandroidx.car.app:app-*:1.1.0-alpha02
Wersja 1.1.0-alpha02 zawiera te zmiany.
Nowe funkcje
- Poziom API 3: dodano
CarHardwareManager
, którego można używać do wysyłania zapytań o dane sprzętowe pojazdu, takie jak model i marka, poziom paliwa i inne czujniki. Obecnie ta funkcja jest dostępna tylko w Androidzie Auto w wersji 6.7 lub nowszej w ramach otwartych testów. Testowanie tej funkcji na komputerze wymaga nowej wersji aplikacjiDesktop Head Unit
, która zostanie udostępniona osobno. Szczegółowe informacje o tym, kiedy nowa wersja będzie dostępna, znajdziesz na stronie Testowanie aplikacji na Androida na samochody. - Więcej informacji i wytyczne dotyczące projektowania w zakresie korzystania z tych funkcji w przypadku hostów samochodowych zgodnych z interfejsem API na poziomie 3 znajdziesz w przewodniku dla deweloperów i w dokumentacji biblioteki.
Zmiany w interfejsie API
- Ujednoliciliśmy metody cyklu życia
SessionController
iScreenController
w jedną metodęmoveToState
(I1ed00). - Dodano
CarContext#getHostInfo()
(I8977e) - Usunięto wycofane pola. (I67168)
- Zaktualizowano klasy
SessionController
iScreenController
, aby bezpośrednio udostępniać konstruktory (Iabf22). - Usunięto
PinSignInMethod.Builder
iProviderSignInMethod.Builder
(I9f0cb) - Dodano funkcję „setCarAppResult()”, aby umożliwić korzystanie z aplikacji opartych na szablonach „w celu uzyskania wyniku” w AAOS (I37741).
- Adnotacje w interfejsach
CarHardware
z użyciem@MainThread
. (Ib2f85) - Nazwa
OnCarDataListener
została zmieniona naOnCarDataAvailableListener
(I518ca) - Zaktualizowano nazwy metod
CarInfo
,Speed
,Mileage
i dokumentację Javadoc. (I86672) - Zmieniono nazwę
Toll
naTollCard
. (I3e7c8) - Usunięto wycofaną funkcję
PinSignInMethod.getPin
, która została zastąpiona przezPinSignInMethod.getPinCode
(I996ce). - Usunięto
OnInputCompletedListener
(zastąpionoInputCallback
). (Ib5be1) - Zmieniono
PinSignInMethod
, aby przyjmować wartośćCharSequence
zamiastString
(I275d5)
Poprawki błędów
- Poprawki Javadoc dla sprzętu samochodowego. (I2abbc)
Wkład zewnętrzny
Znane problemy
- W
SignInTemplate
użycieInputSignInMethod
może spowodowaćNullPointerException
w przypadku hosta samochodu. Ten problem postaramy się rozwiązać w kolejnej wersji biblioteki. Aby obejść ten problem, dodaj ten wiersz do konfiguracji Proguard aplikacji:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
Wersja 1.1.0-alpha01
16 czerwca 2021 r.
androidx.car.app:app:1.1.0-alpha01
, androidx.car.app:app-automotive:1.1.0-alpha01
i androidx.car.app:app-testing:1.1.0-alpha01
są zwalniane. Wersja 1.1.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Poziom interfejsu API 2: nowe interfejsy
SignInTemplate
iLongMessageTemplate
, których można używać w przypadku procesów logowania, gdy pojazd jest zaparkowany. - Poziom API 2: nowa obsługa interaktywności mapy w ramach elementu
NavigationTemplate
- Poziom API 2: nowa obsługa tekstu o różnej długości, która umożliwia aplikacjom udostępnianie wielu wersji ciągu znaków do wyświetlania w zależności od rozmiaru ekranu samochodu.
- Więcej informacji i wytyczne dotyczące projektowania w zakresie korzystania z tych funkcji w jednostkach głównych w samochodzie zgodnych z poziomem interfejsu API 2 znajdziesz w przewodniku dla programistów i dokumentacji Javadoc biblioteki.
Zmiany w interfejsie API
- Wszystkie metody interfejsu
*Callback
zostały ustawione jako domyślne, a metodaOnRequestPermissionsCallback
została zmieniona naOnRequestPermissionsListener
(Ib3ec9). - Zaktualizowano klasy
androidx.car.app.hardware
, aby usunąć niepotrzebne konstruktory i klasy parametrów. (I67beb) - Dodaliśmy
androidx.car.app.hardware
klasy umożliwiające dostęp do danych specyficznych dla samochodu, takich jak paliwo, bateria i prędkość. (Iff3c9) - Dodano obsługę
ActionStrip
naMessageTemplate
(Ida657) - Dodano
setLoading
doMessageTemplate
. (I2a4b5) - Nazwa
ConnectionToCar
została zmieniona naCarConnection
(Ife9bd) - Zmieniono
NavigationTemplate
, aby zwracać wyraźną wartośćPanModeDelegate
(I13877) - Zaktualizowano kolejność parametrów w przypadku zdarzenia
CarContext.requestPermissions
(Ib890a) - Zaktualizowano klucz metadanych, aby zdefiniować minimalny poziom interfejsu API samochodu na
androidx.car.api.minCarApiLevel
(Ib0d41) - Utworzono interfejs API, który umożliwia obserwowanie stanu połączenia z samochodem (Ifc935).
- Dodaliśmy obsługę ustawiania przełącznika dla
Action
oraz trybu przesuwaniaAction
(Ica6af). - Utworzono
CarNotificationManager
, aby obsługiwać wysyłanie powiadomień w samochodzie (I10d7a) - Dodano
ConstraintManager
, aby podawać limity list z hosta (I8690e) - Dodano interfejs API trybu przesuwania i paska działań na mapie w
NavigationTemplate
(I77aa6) - Dodano interfejs API przesuwania i powiększania w
SurfaceCallback
dla aplikacji do nawigacji (Id5e9d) - Zaktualizowano
CarAppApiLevel
do 2 (Ic1540) - Dodano możliwość wysyłania próśb o uprawnienia z
CarAppService
(I5421e) - Dodano adnotację
RequiresCarApi(2)
do interfejsu API z wieloma tekstami (Iacb62) - Zezwalanie na wiele wariantów tekstu w tytule szablonu z połową listy (Ib8df7)
- Dodano nowy element
LongMessageTemplate
(wymaga interfejsu Car API na poziomie 2) (Ic5cee)
Poprawki błędów
- Zaktualizowano wymagania dotyczące rozmiaru obrazu, aby uwzględnić większe ekrany samochodowe (I116dc)
- Niedozwolone dodawanie więcej niż 2 działań w treściach szablonów (I32157)
- Zapewniliśmy, że wszystkie utworzone
PendingIntent
w bibliotece aplikacji samochodowych mają ustawione flagi. (If84fe, b/186394900) - Zaktualizowano dokumentację Javadoc, aby zezwalać na zmiany tekstu w
Row
jako odświeżanie (If3f9c) androidx.activity:activity:1.2.0
jest teraz zależnością interfejsu API (Id1cb9)- W przypadku
SignInTemplate
iLongMessageTemplate
wprowadziliśmy wymaganie, aby w treści zawierały działania dostępne tylko podczas parkowania, a w dokumentacji zaktualizowaliśmy informację, że będą one wyświetlane tylko wtedy, gdy samochód jest zaparkowany (Iddaa9). - Naprawiono wyjątek, który występuje podczas wycofywania
Screen
na początku (Ifcf40, b/184664896). - Dozwolony niestandardowy kolor tekstu w
ForegroundCarColorSpan
(I69e59) - Rozwiązanie problemu polegającego na tym, że po
ON_DESTROY
Screen
wSession
pojawia sięON_DESTROY
(I52e01, b/183696617). - Zaktualizowano dokumentację Javadoc dotyczącą sytuacji, w których można ustawić pozostały czas
TravelEstimate
na nieznany. (I99610, b/183632456) - Zaktualizowano
Action
, aby obsługiwaćForegroundColorSpan
w tytule i dowolny niestandardowy kolor tła (I578e4). - Nie wykonuj funkcji
NavigationManagerCallback#onStopNavigation
, jeśli wywołanie zwrotne zostanie wyczyszczone przed wykonaniem przez wykonawcę (I7fc5e, b/181143772). - Naprawiliśmy problem, który wymagał, aby aplikacja wyraźnie przejmowała zależność od lifecycle-common-java8 (I8b8c8).
Znane problemy
- W
SignInTemplate
klawiatura ekranowa wyświetla ikonę „szukaj” zamiast ikony „enter”, gdy użytkownik chce potwierdzić wpisane dane. Użytkownicy mogą skorzystać z klawiatury telefonu, która aktywuje się, gdy pole wprowadzania jest aktywne. - W Androidzie Auto w wersji 6.5 wywołania zwrotne przesuwania i powiększania w
SurfaceCallback
mogą być nieprawidłowo wywoływane w przypadku niektórych gestów dotykowych.
Wersja 1.0.0 testowania aplikacji samochodowych
Wersja 1.0.0-alpha01
24 marca 2021 r.
Zostanie wycofaneandroidx.car.app:app-testing:1.0.0-alpha01
Wersja 1.0.0-alpha01 zawiera te zmiany.
To pierwsza wersja Jetpacka, która zawiera bibliotekę testową, która wcześniej była dostępna tylko w formie kodu zamkniętego. Zapoznaj się z naszymi przykładami, aby dowiedzieć się, jak używać tej biblioteki w testach.
Nowe funkcje
- Kontrolery klas modeli zostały usunięte. Metody pobierania modelu są teraz częścią publicznego interfejsu API, co umożliwia weryfikowanie wartości ustawionych w konstruktorach.
- Poprzedni element
CarAppServiceController
został zastąpiony nowym elementemSessionController
na potrzeby testowania logiki związanej z czasem trwania połączenia z hotspotami.
Wersja 1.0.0
Wersja 1.0.0
21 kwietnia 2021 r.
Zostanie wycofaneandroidx.car.app:app:1.0.0
Wersja 1.0.0 zawiera te zmiany.
Główne funkcje wersji 1.0.0
- Na początku kwietnia ogłosiliśmy, że aplikacje mogą zacząć publikować na kanale produkcyjnym za pomocą
androidx.car.app:app:1.0.0-rc01
. Biblioteka aplikacji samochodowych w wersji 1.0.0 jest już stabilna i w pełni zgodna z Androidem Auto w wersji 6.1 lub nowszej. - Szczegółowe informacje o tworzeniu aplikacji do nawigacji, parkowania i ładowania na Androida Auto za pomocą biblioteki znajdziesz w przewodniku dla deweloperów.
Poprawki błędów
- Naprawiono wyjątek, który występuje podczas wywoływania
Screen
na początku (70aae1, b/184664896). - Rozwiązanie problemu polegającego na tym, że po
ON_DESTROY
Screen
(0ceecb, b/183696617) naSession
pojawia sięON_DESTROY
.
Wersja 1.0.0-rc01
24 marca 2021 r.
Zostanie wycofaneandroidx.car.app:app:1.0.0-rc01
Wersja 1.0.0-rc01 zawiera te zmiany.
Poprawki błędów
- Usunęliśmy błąd związany z wyścigiem, który powodował, że funkcja
NavigationManagerCallback#onStopNavigation
była wywoływana po wyczyszczeniu wywołania zwrotnego. Dzieje się tak, gdy wywołanie zwrotne zostanie wyczyszczone, zanim wykonawca wywołania zwrotnego zostanie uruchomiony (I7fc5e, b/181143772). - Rozwiązaliśmy problem, który wymagał, aby aplikacja była wyraźnie zależna od
lifecycle-common-java8
(I8b8c8). - Rozwiązano problem
NullPointerException
, który występował, gdy aplikacja otrzymywała wywołaniestopNavigation
po usunięciu wywołania zwrotnego (Ib8b89, b/181143772). - Ulepszenia polegające na tym, że wywołania nie są wysyłane do aplikacji, jeśli jej cykl życia nie jest co najmniej w stanie
CREATED
(I86965, b/179800224, b/177921120) - Rozwiązaliśmy problem, który powodował, że nieprawidłowy minimalny interfejs API określony w pliku manifestu aplikacji powodował błąd, co z kolei prowadziło do błędu ANR na hoście. (Iffedd, b/174231592)
Wersja 1.0.0-beta01
24 lutego 2021 r.
Zostanie wycofaneandroidx.car.app:app:1.0.0-beta01
Wersja 1.0.0-beta01 zawiera te zmiany.
Jest to pierwsza wersja biblioteki Jetpack, która wcześniej była dostępna na licencji zamkniętej. Jest ona zgodna z Androidem Auto w wersji 6.1 lub nowszej. Szczegółowe informacje o tworzeniu aplikacji samochodowych za pomocą tej biblioteki znajdziesz w przewodniku dla programistów.
Nowe funkcje
- Wprowadziliśmy
GridTemplate
, którego aplikacja może używać do wyświetlania listy elementów interfejsu w układzie siatki. - Wprowadziliśmy metodę
CarAppService.createHostValidator
weryfikacji, czy połączenie hosta pochodzi z zaufanego źródła (np. Androida Auto). - Dodano interfejs API
CarAppExtender.Builder.setColor
. (b/174231592)
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że podczas sekwencyjnego zamykania ekranów wznawiany był nieprawidłowy
Screen
. (b/177590791)