Aplikacja samochodowa
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| 9 września 2026 r. | 1.7.0 | 1.8.0-rc01 | - | 1.9.0-alpha02 |
Deklarowanie zależności
Aby dodać zależność od biblioteki aplikacji na samochody, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule 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.
Prześlij opinię
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.9
Wersja 1.9.0-alpha02
9 września 2026 r.
Publikacja androidx.car.app:app-*:1.9.0-alpha02 Wersja 1.9.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Motywy aplikacji: dodano
CarAppThemeSource, aby umożliwić aplikacjom włączenie motywów marki, a hostom wysyłanie zapytań o preferowane konfiguracje motywów. - Nagłówek wyszukiwania: w interfejsie API 9 dodano
SearchHeaderdlaSectionedItemTemplatejako zamiennik nagłówka wyszukiwania. - Stylizacja komponentów: dodaliśmy obsługę stylizacji kart (
TabStyle), banerów (BannerStyle) oraz elementów sterujących multimediami i wskaźników postępu (MediaPlaybackStyle,StrokeCap).
Zmiany w interfejsie API
- Stylizacja multimediów i paska postępu: dodano elementy
MediaPlaybackStyle,setMediaAccentColori samodzielny elementStrokeCap, aby dostosować elementy sterujące odtwarzaniem i wskaźniki postępu. ZaktualizowanoCarProgressBarStyle, aby obsługiwać kolory z wartością null, i usunięto zCarProgressBarwycofane metody kolorów. (Ib45c6, I17141, I270a4, I10fe4, I80a17) - Motywy aplikacji: wprowadzono
CarAppThemeSource, aby umożliwić publiczne włączanie motywów aplikacji, oraz dodanoonGetAppThemedoCarAppService(z odpowiednim IPC), co pozwala hostom wysyłać zapytania o preferowane konfiguracje motywów. (I108f8, Ifbd41, I97c7e) - Styl kart: dodano obsługę niestandardowych kolorów tła, kolorów treści/tekstu i niestandardowych promieni zaokrąglenia za pomocą
TabStyle. (I07330, Id09f6) - Ikony i rozmiary obrazów: wycofaliśmy
IMAGE_TYPE_ICONwRow,GridItem,BanneriCondensedItemna rzecz stałych rozmiarówIMAGE_TYPE_SMALLiIMAGE_TYPE_MEDIUM, w których ikony są domyślnie renderowane bez odcieni. PrzekształciliśmyCarIconStylei dodaliśmy obsługę kształtów niestandardowych wCarIcon. (Ie57fa, I5cc2d, Ic9584, Iaef57) - Banery: dodano
BannerStyledla niestandardowych kształtów i promieni zaokrąglenia, dodano opcje wariantów obrazu (IMAGE_TYPE_SMALL,IMAGE_TYPE_LARGE) i usunięto wycofane interfejsy API ikon i tła na rzeczsetLeadingImageiaddTrailingImage. (I265bb, I7d28a, I23f62, I2917e, I95b1c) - Nagłówki i układ: w interfejsie API 9 wprowadziliśmy
SearchHeaderdlaSectionedItemTemplate, dodaliśmystartHeaderImagedoHeaderw przypadku niestandardowych ikon początkowych oraz dodaliśmyincompleteLastRowStrategy, aby kontrolować obsługę częściowych wierszy lub kolumn w sekcjach siatki, skróconych i wyróżnionych. (I86632, I24937, If64be)
Poprawki błędów
- Wyjaśniono, że element
Action.TYPE_MEDIA_PLAYBACKjest ignorowany jako szablonowy przycisk FAB na hostach interfejsu Car API w wersji 9 lub nowszej. (Ie8fd4)
Wersja 1.9.0-alpha01
19 maja 2026 r.
Publikacja androidx.car.app:app-*:1.9.0-alpha01 Nowe funkcje, które zapewniają większą elastyczność korzystania z szablonów:
- Sekcja Wyróżnione: prezentuje polecane kolekcje treści lub rekomendacje redakcyjne, łącząc wyróżniający się baner powitalny z sąsiadującymi z nim skróconymi elementami.
- Skrócone elementy: wyświetla kompaktowe komponenty wizualne, które ograniczają tekst do jednego wiersza, dzięki czemu na ekranie mieści się więcej treści, które nie przytłaczają kierowcy.
- Elementy: kompaktowe, interaktywne elementy służące do filtrowania treści lub wywoływania szybkich działań, obsługujące konfigurowalne kształty, obramowania i kolory.
- Zminimalizowany panel sterowania: implementuje trwałą, elastyczną i skróconą wersję widoku „Co jest grane”, która automatycznie pojawia się podczas aktywnego odtwarzania.
- Banery: prezentują specjalne funkcje aplikacji, nowe funkcje lub ważne wiadomości z wyraźną widocznością wizualną dzięki dostosowywanym wypełnieniom tła i promieniom zaokrąglenia rogów.
- Nagłówek sekcji: określa interaktywne tytuły, nagłówki, ikony marek i przyciski działania na końcu poszczególnych grup treści w szablonie elementu podzielonego na sekcje.
- Rozwinięty układ nagłówka: ulepsza standardowe nagłówki w szablonie elementu podzielonego na sekcje, aby obsługiwać bogate układy, takie jak obrazy tła, które zwijają się podczas przewijania, i działania dodatkowe.
Wersja 1.9.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
BanneriBannerSection, co umożliwia dodanieBannersdoSectionedItemTemplate. (Id5dd2, b/505494611) - Dodano
NavigationManager.setVoiceAssistantCapabilities, aby umożliwić aplikacjom do nawigacji przesyłanie do hosta informacji o funkcjach asystenta głosowego i stanie zgody. (I34c93, b/489625791, b/486967456) - Dodaliśmy
NavigationVoiceAssistantCapabilitiesinterfejs API dla aplikacji do nawigacji, który umożliwia deklarowanie obsługiwanych komend głosowych, przerw i stanu zgody użytkownika na korzystanie z asystenta głosowego. (I79d3e, b/489625791, b/486967456) - Wprowadzenie
CarAppApiLevel9 (I87656, b/501233317) - Dodanie interfejsu API do ustawiania kształtu elementu
ChiplubChipSectionza pomocąChipStyle(I1fcfc, b/505086379) - Dodaliśmy nowe interfejsy API
CondensedItemiCondensedSection, aby obsługiwać układy o wysokiej gęstości wSectionedItemTemplate. (Iabaa8, b/499350859) - Dodaliśmy eksperymentalną obsługę napisów w nagłówku i nowy model tła. (I66b5b)
Wersja 1.8
Wersja 1.8.0-rc01
26 sierpnia 2026 r.
androidx.car.app:app-*:1.8.0-rc01 została wydana i ma te same funkcje co wersja 1.8.0-beta01. Wersja 1.8.0-rc01 zawiera te zmiany.
- Ta wersja zawiera poprawkę zabezpieczeń. Jeśli używasz starszej wersji, zaktualizuj ją, aby móc korzystać z tej wersji.
Wersja 1.8.0-beta01
22 kwietnia 2026 r.
Publikacja androidx.car.app:app-*:1.8.0-beta01 Wersja 1.8.0-beta01 zawiera te zmiany.
Nowe funkcje
- Dodano obsługę szablonu elementu podzielonego na sekcje, co umożliwia tworzenie bardziej złożonych układów list i siatek.
- Ulepszona obsługa odtwarzania multimediów.
- Dodaliśmy obsługę właściwości
IMAGE_TYPE_MEDIUMwRowImageType. - Dodano działanie Intent
ACTION_MEDIA_SHOW_PLAYBACK_VIEW, które umożliwia uruchamianie ekranów odtwarzania multimediów.
Zmiany w interfejsie API
- Dodano obsługę
IMAGE_TYPE_MEDIUMwRowImageType(I76108) - Dodaj działanie związane z intencją
ACTION_MEDIA_SHOW_PLAYBACK_VIEW. Gdy to działanie zostanie wysłane do aktywności, która je obsługuje, oznacza to, że aplikacja powinna uruchomić ekran odtwarzania lub inny odpowiedni ekran (If29db, b/455949944).
Poprawki błędów
- Zmiana domyślnego działania nadchodzącego interfejsu
SectionedItemTemplate, aby zapisywać stan przewijania podczas odświeżania szablonu i wykonywania działań wstecz (I6c9cc, b/461256656)
Wersja 1.8.0-alpha03
19 listopada 2025 r.
Publikacja androidx.car.app:app-*:1.8.0-alpha03 Wersja 1.8.0-alpha03 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy obraz do wierszy, co umożliwia nowe przypadki użycia listy.
- Dodaj
SectionedItemTemplate#alphabeticalIndexingStrategy, aby umożliwić różne indeksowanie alfabetyczne w przypadku akceleratorów list.
Zmiany w interfejsie API
- Dodano
endImageTypedlaendImagesw wierszach (I8865b) - Dodaj
SectionedItemTemplate#alphabeticalIndexingStrategy. Zastępuje ona#isAlphabeticalIndexingAllowedi zapewnia deweloperom więcej opcji indeksowania alfabetycznego. (Ia164d, b/410092683) - Dodaj obsługę obrazu końcowego w wierszu aplikacji samochodowej. (If93f0)
- Dodano element
CarIcon MediaPlayback, aby uprościć korzystanie ze standardowego działaniaMediaPlayback. (Ib6cb7)
Poprawki błędów
- Przeniesienie domyślnego
minSdkz API 21 do API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
Wersja 1.8.0-alpha02
18 czerwca 2025 r.
Publikacja androidx.car.app:app-*:1.8.0-alpha02 Wersja 1.8.0-alpha02 zawiera te zmiany.
Nowe funkcje
- Dodano obsługę elementu
Action.MEDIA_PLAYBACK, który wyświetla wskaźnik na podstawie stanu odtwarzania multimediów. - Dodano 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
SectionedItemTemplatemię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 elementuCarAppExtendermożna było dodać dowolny typ działania. (Idc4d7) - Udostępniliśmy funkcję
SectionedItemTemplatew przypadku interfejsu API 8 i nowszych. (I9a079)
Wersja 1.8.0-alpha01
20 maja 2025 r.
Publikacja androidx.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ę Multimediów, 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 podzielonego elementu w Androidzie Auto, który umożliwia łączenie podsekcji składających się z list lub siatek.
- Dodaliśmy bardzo duży rozmiar 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 kategoria multimediów
CarAppLibraryjest obsługiwana (Ic4b08). - Dodano
OnItemVisibilityChangeListenerdo sekcji. (I2c2fd) - Dodano
Mileage#getOdometerKilometersi wycofanoMileage#getOdometerMeters(Ic91af)
Poprawki błędów
- Poprawienie błędu 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.
Publikacja androidx.car.app:app-*:1.7.0 Wersja 1.7.0 zawiera te zmiany.
- To pierwsza stabilna wersja, która zawiera poprawkę CVE-2024-10382, która została wprowadzona 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ę błędu CVE-2024-10382, który został załatany 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 wprowadzono inne ogólne poprawki błędów. Jeśli używasz starszej wersji, zaktualizuj ją, aby móc korzystać z tej wersji.
Publikacja androidx.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
CarAppExtendermożna teraz używać do rozszerzania platformyNotification.Builder, a nie tylkoNotificationCompat.Builder. (Id3ad7) - Dodaj
KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LISTdodatkowo. (I201f9) - Wycofaj pusty konstruktor Builder na
ConversationItemi 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
PlaceListużywa tytułu nagłówka w formie ciągu znaków (tylko tekst). (Ic992f) - Ta biblioteka korzysta teraz z adnotacji o wartości null JSpecify, które są używane w typie. Deweloperzy Kotlin powinni używać tego argumentu kompilatora, aby wymusić prawidłowe użycie:
-Xjspecify-annotations=strict(jest to domyślny argument począwszy od wersji 2.1.0 kompilatora Kotlin). (Ib5367, b/326456246)
Wersja 1.7.0-beta02
18 września 2024 r.
Publikacja androidx.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_VERSIONdodatkowych (I8796b) - Zastąp klasę
TabContents.Api8Builderkonstruktorem@ExperimentalCarApiw 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 ładowania elementów do
SectionedItemTemplate(umożliwia ładowanie długich list bez awarii) (I0d122) - Dodaj
SectionedItemTemplatedo listy obsługiwanych szablonów wTabTemplatew interfejsie API 8. (Idc5d6)
Poprawki błędów
- Usunięto ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsów API podczas korzystania z R8 z AGP 7.3 lub nowszą (np. R8 w wersji 3.3) oraz w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszej (np. D8 w wersji 8.1). Klienci, którzy nie korzystają z wtyczki Androida do obsługi Gradle, 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.
Publikacja androidx.car.app:app-*:1.7.0-beta01 Wersja 1.7.0-beta01 zawiera te zmiany. Funkcje są takie same jak w wersji alpha01, 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ą.
RoutePreview,PlaceListNavigation,MapTemplatezostał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.
- Element rozmowy: nowe interfejsy API do wyświetlania rozmów (komunikatory internetowe, SMS-y) i odczytywania przez Asystenta w samochodzie.
- Wymiary pojazdu: nowy interfejs API do pobierania wymiarów pojazdu (obecnie dane w AAOS).
Zmiany w interfejsie API
- Dodaj tag
@ExperimentalCarApidoMediaPlaybackTemplate.Builder. (Ic1957) - Dodaje nowy
SectionedItemTemplatew wersji eksperymentalnej. (I5958a) - Wprowadzenie
CarAppApiLevel 8(I3fa22) - Dodaje
MediaPlaybackTemplatedo 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 instancesw metodzieBaseCarAppActivitywonDestroysprawdzaniem wartości null, aby uniknąć awarii. (Iec676)
Wersja 1.7.0-alpha02
17 kwietnia 2024 r.
Publikacja androidx.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
MapWithContentszablon będzie obsługiwać w przyszłości.
Zmiany w interfejsie API
- Wycofanie starych funkcji
MapTemplate,RoutePreviewNavigationTemplate,PlaceListNavigationTemplatei zachęcanie do korzystania z nowej funkcjiMapWithContentTemplate(Ib0a08)
Wersja 1.7.0-alpha01
3 kwietnia 2024 r.
Publikacja androidx.car.app:app-*:1.7.0-alpha01 Zmieniliśmy schemat wersji biblioteki, aby był zgodny z aktywną wersją CarApi. Zostało to wprowadzone na podstawie opinii deweloperów, aby zmniejszyć zamieszanie związane ze schematem nazewnictwa. 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 / Wiadomość jako treści na mapie.RoutePreview,PlaceListNavigationszablony map są teraz 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 (komunikatory, SMS-y) i odczytywania 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
CarInfo#fetchExteriorDimensionsAPI, który umożliwia dostęp do informacji o wymiarach zewnętrznych pojazdu, takich jak wysokość, szerokość itp. (Ia40c5) - Usunięto tag
ExperimentalAPIzMapWithContentTemplate(I66db8) - Zaktualizuj parametr
GridItem#setTitle, aby dopuszczał wartość null. (I3d610) - Interfejs API
GetHeadernie wymaga interfejsu API 7, ponieważ jest wstecznie zgodny (I8c812). - Dodanie obsługi
HeaderwListTemplate, wycofanieheaderAction,headerTitle,actionStrip(I7ae01) - Wycofanie
title,headerAction,actionStripwGridTemplatei dodanie obsługiHeader(I41a9c) - Usunięcie wymagania dotyczącego poziomu 7 w przypadku eksperymentalnych interfejsów API: Badge,
GridTemplatemetody pobierania i ustawiania rozmiaru elementu oraz kształtu obrazu,GridItemmetody pobierania i ustawiania Badge. (Id71eb) - Wycofaj
title,headerAction,actionStripwPaneTemplate, dodaj obsługę nowegoHeader(I23154) - Zmieniono dane telemetryczne Centrum multimediów z
BroadcastReceiverna Przeglądaj działanie niestandardowe. (I4185f) - Dodaliśmy obsługę atrybutu
HeaderwMessageTemplate. Wycofano obsługęActionStrip,headerActionititle. (Ie2de8) - Modyfikowanie widoczności stałej alertu (Icf8a8)
- Usuń atrybut
isLoadingz szablonu nadrzędnego (I651e6) - Dodaj dodatkowe informacje, aby przekazać aplikacjom multimedialnym główne parametry 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) - Zaktualizowano logikę obcinania
ListTemplate, aby usuwać najstarsze wiadomości zConversationItem(Ie0a61)
Wersja 1.4
Wersja 1.4.0
29 maja 2024 r.
Publikacja androidx.car.app:app-*:1.4.0 Wersja 1.4.0 to promocja 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 limitów zadań adaptacyjnych
- Działania dodatkowe dotyczące elementów listy
Wersja 1.4.0-rc02
13 grudnia 2023 r.
Publikacja androidx.car.app:app-*:1.4.0-rc02 Wersja 1.4.0-rc02 zawiera te zatwierdzenia. Tylko drobne poprawki
Poprawki błędów
- Zaktualizowano dokumentację Javadoc w
ConversationItem, aby wskazywała, że wiadomości powinny być sortowane od najstarszych do najnowszych (I77a2a). - Zaktualizowano logikę obcinania
ListTemplate, aby usuwać najstarsze wiadomości zConversationItem(Ie0a61)
Wersja 1.4.0-rc01
1 listopada 2023 roku
Wersja androidx.car.app:app-*:1.4.0-rc01 została opublikowana bez znaczących zmian. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.
Wersja 1.4.0-beta02
20 września 2023 r.
Publikacja androidx.car.app:app-*:1.4.0-beta02 Wersja 1.4.0-beta02 zawiera te zatwierdzenia. Jest to prawie identyczna wersja jak beta01, ale obniża wymaganie dotyczące compileSdk do 33.
Poprawki błędów
- Naprawienie błędu, który powodował nieprawidłowe wyświetlanie ekranów wczytywania na kartach. (cae860)
Wersja 1.4.0-beta01
9 sierpnia 2023 r.
Publikacja androidx.car.app:app-*:1.4.0-beta01 Wersja 1.4.0-beta01 zawiera te zatwierdzenia.
Uwaga: wersja 1.4-beta01 wymaga compileSdk34, która jest nadal w stanie rozwoju. Wersja 1.4-beta02 rozwiąże ten problem. Możesz też dodać
android.suppressUnsupportedCompileSdk=34do plikusettings.gradleprojektu, 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.
Publikacja androidx.car.app:app-*:1.4.0-alpha02 Wersja 1.4.0-alpha02 zawiera te zatwierdzenia.
- 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 listy lub siatki
- 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
ConversationItemw bibliotece aplikacji samochodowych (Ie5ed6) - Dodaj dodatkowe informacje, 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
ActionsConstraintsAPI, aby obsługiwać przycisk tworzenia. (I31661) - Wykonano
set/getTemplatejakoset/get ContentTemplate(Ica036) - Parametr szablonu będzie teraz miał wartość
@NonNull. ZaktualizowanoMapWithContentTemplatedokumentację interfejsu API (I0f8ed) - Usuwa tag
@ExperimentalCarApidla działań wListTemplatew wersji CAL 1.4 (I2cfcb) - Usuwa tag
@ExperimentalCarApidlaTabTemplate(Ifcb82) - Usuń adnotacje
@ExperimentalCarApiz działań alternatywnych i dekoracji wiersza (I8487e) - Dodaje identyfikator treści aktywnej karty do elementu
TabTemplatei wycofuje stan aktywny na kartach (I96932) - Dodaj usługę
ItemImageShapedo usługiGridTemplate(Ibf431) - Dodaj właściwość
ItemSizedo elementuGridTemplate, która kontroluje rozmiar elementu siatki zgodnie z względnymi przedziałami małym, średnim i dużym. (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
Publikacja androidx.car.app:app-*:1.4.0-alpha01 Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaje działania najwyższego poziomu do
GridTemplatew bibliotece aplikacji samochodowych (Id0191) - Dodaje działania najwyższego poziomu do
ListTemplatew 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 wartości
equals()ihashCode()wartościamiConversationItemiCarMessage(I6fd10) - Ulepszanie weryfikacji
ConversationItem.mMessages(wymaganie wartości niezerowej i niepustej (Iafc51) - Dodawanie adnotacji
@Keepdo pólConversationItem(I5d250) - Zaktualizowano dokumentację Java dotyczącą dekoracji wierszy i działań dodatkowych. (I000b6)
Wersja 1.3
Wersja 1.3.0-rc01
7 grudnia 2022 r.
Publikacja androidx.car.app:app-*:1.3.0-rc01 Wersja 1.3.0-rc01 zawiera te zatwierdzenia.
- Drobne poprawki błędów z wersji beta01. Brak istotnych 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 zatwierdzenia.
- 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 samochodowych Google 1.4 lub nowszym.
Nowe funkcje
Oprócz funkcji dodanych w bibliotece aplikacji na samochody w wersji 1.3.0-alpha01 w wersji beta01 dodano te funkcje (wszystkie te funkcje obejmują tylko zmiany po stronie hosta bez zmian 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 usługach
PlaceListNavigationTemplate,RoutePreviewNavigationTemplateiMapTemplate. Możesz to zrobić, aktualizując informacje o nawigacji wNavigationManager.updateTrip(). - Włącz przycisk polecenia za pomocą
FLAG_DEFAULT, aby wyświetlić animację limitu czasu. Po upływie limitu czasu ten przycisk zostanie kliknięty domyślnie. ([API 5 - All Templates]) - Podtytuł
Rows 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 dla
Action,Toggle,Row([API 5 - All Templates])
Zmiany w interfejsie API
- Złagodzenie ograniczeń na
MapTemplateliście, 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 miejscu, w którym dozwolone jest ustawienieActionnaOnClickDelegate()w przypadku działań innych niż standardowe typy ikon. (TYPE_APP_ICON,TYPE_BACKiTYPE_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 zatwierdzenia.
Funkcje oznaczone poziomem interfejsu API 5 są zgodne z Androidem Auto w wersji 7.9 lub nowszej.
Nowe funkcje
- Poziom API 5: nowy element
MapTemplate, którego aplikacje do nawigacji mogą używać do wyświetlania treści panelu lub listy obok mapy (If5826, If44b8). - Poziom interfejsu API 5: nowy interfejs API
CarAudioRecordumożliwiający nagrywanie dźwięku za pomocą mikrofonu pojazdu (I5e71a) - Poziom interfejsu API 5: nowy interfejs API
SuggestionManager, który umożliwia aplikacjom przekazywanie sugestii do hosta (I5c103) - Poziom API 5: nowy interfejs
AlertAPI do wyświetlania powiadomień kontekstowych na urządzeniuNavigationTemplate(I163a7, I5ad70) - Poziom API 5: nowe komponenty
HeaderiMapControllerułatwiające ponowne wykorzystanie w szablonach (If5826) - Dodano
androidx.car.app.category.POIjako kategorię umożliwiającą korzystanie z aplikacji z ważnymi miejscami (wycofano kategorieandroidx.car.app.category.PARKINGiandroidx.car.app.category.CHARGING) (I59da1)
Zmiany w interfejsie API
- Poziom API 5: nowa metoda
onClickw interfejsieSurfaceCallbackumożliwiająca interakcję z mapą przez kliknięcie (Ia9777) - Poziom interfejsu API 5: nowe flagi
Action.FLAG_IS_PERSISTENTiAction.FLAG_DEFAULTdo opisywaniaActions (I96318, I5ad70) - API na poziomie 5: nowy stan włączony/wyłączony dla komponentów
Action,RowiToggle(obsługa hosta pojawi się w wersji biblioteki 1.3.0-beta01) (Id8a09) - Poziom interfejsu API 5: preferowanie nowego komponentu
Headerza pomocąsetHeaderw przypadkuPlaceListNavigationTemplate.BuilderiRoutePreviewNavigationTemplate.Builder, wycofanie dotychczasowych metodsetTitleisetHeaderAction(I30e6a) - Poziom interfejsu API 5: nowa metoda
setOnContentRefreshListnerw klasachPlaceListMapTemplate.BuilderiPlaceListNavigationTemplate.Builderdo użycia z implementacjami nowego interfejsuOnContentRefreshListner. - Poziom API 5: nowe parametry
setTripTextisetTripIconwTravelEstimate.Builderumożliwiające dostosowanie karty szacowania podróży (Idcc6d, Ic620d) - Dodaliśmy obsługę właściwości
CarIconSpanw tytule elementuPaneTemplate(Ia1ee0) - Dodaliśmy obsługę właściwości
CarIconSpanw tytule i tekście elementuRow(Ic1e3c) - Mapy
ActionStripmogą teraz zawierać maksymalnie 4 działania (If3522). - Aktualizacja poziomu interfejsu API aplikacji samochodowej do wersji 5 (I26b8e)
- Nagłówki i tytuły są teraz opcjonalne w przypadku
PlaceListMapTemplate,PlaceListNavigationTemplate,RoutePreviewNavigationTemplate,GridTemplate,ListTemplate,LongMessageTemplate,MessageTemplate,PaneTemplateiSignInTemplate(I2078d, Icadde)
Poprawki błędów
- Zaktualizowano reguły określania rozmiaru obrazu
PaneTemplate, aby były kwadratową ramką ograniczającą (Idd72e). - Rozwiązaliśmy wyjątek, który występuje, jeśli stos ekranu zostanie zmodyfikowany po wywołaniu funkcji
State.DESTROYED. (I3c8eb) - Dodaliśmy sprawdzanie wartości null podczas pobierania ikony aplikacji (I3f710).
- Aktualizacja interfejsu Car Hardware API, aby domyślnie używał
STATUS_UNKNOWNzamiastSTATUS_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.
Publikacja androidx.car.app:app-*:1.2.0 Wersja 1.2.0 zawiera te zatwierdzenia.
- Jest to wersja stabilizacyjna, która nie różni się od wersji v1.2.0-rc01.
Wersja 1.2.0-rc01
23 marca 2022 r.
Publikacja androidx.car.app:app-*:1.2.0-rc01 Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
- Jest to wersja stabilizacyjna, która nie zawiera żadnych 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, jeśli stos ekranu zostanie zmodyfikowany 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 uprawnienie ACCESS_COARSE_LOCATION wystarczy do korzystania z funkcji (I510c2). - Uczyniliśmy numer zjazdu opcjonalnym w przypadku manewrów typu rondo z kątem (Ife7d1).
Wersja 1.2.0-beta02
26 stycznia 2022 r.
Publikacja androidx.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 interfejsu API 4 lub niższym są zgodne zarówno z Android Auto 7.2+, jak i z nową platformą Android Automotive OS. Więcej informacji znajdziesz w sekcji Known Issues poniżej.
Zmiany w interfejsie API
- Dodano eksperymentalny interfejs API
setOnContentRefreshListenerdo szablonów POI (I6bf22)
Poprawki błędów
- Usunięto wyciek pamięci w
CarAppService, gdy host samochodu odłącza się. (I5c9ca, b/203594731) - Zaktualizowano dokumentację Javadoc dla
CarAppActivity, aby uwzględnić wymagania dotyczące trybu uruchamiania singleTask (Id2f95) - Ogranicza to błąd wizualny po wznowieniu. (Iff7e0)
Znane problemy
- Mapy
ActionStripw wersjachPlaceListNavigationTemplateiRoutePreviewNavigateTemplatezaczną być dostępne w kolejnych wersjachAndroid AutoiAndroid Automotive OS.
Wersja 1.2.0-alpha02
15 grudnia 2021 roku
Publikacja androidx.car.app:app-*:1.2.0-alpha02 Wersja 1.2.0-alpha02 zawiera te zmiany.
Funkcje oznaczone poziomem API 4 zostały ulepszone z eksperymentalnych do stabilnych.Obejmuje to 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
Panezostał zwiększony z 2 do 4.
Zmiany w interfejsie API
- Dodaliśmy 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
Panena 4 (I0068b)
Wersja 1.2.0-alpha01
3 listopada 2021 r.
Publikacja androidx.car.app:app-*:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Wszystkie nowe v1.2.0funkcje (API 4+) są obecnie eksperymentalne i kierowane na przyszłe wersje Androida Auto i systemu operacyjnego Android Automotive. Więcej informacji znajdziesz w przewodniku dla programistów.
Zmiany w interfejsie API
- Wprowadziliśmy eksperymentalny interfejs API
AutomotiveCarInfo. (Ia13e5) - Dodano poziom 4 interfejsu API biblioteki aplikacji samochodowych (I2a2e7)
- Poziom interfejsu API 4: dodano obsługę ustawiania
CarIconwPane(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
PlaceListNavigationTemplateiRoutePreviewNavigationTemplate(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
Publikacja androidx.car.app:app-*:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Jest to wersja stabilizacyjna, która nie różni się od wersji 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:
SignInTemplateiLongMessageTemplate, 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 elementu
NavigationTemplate - Poziom interfejsu 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:
CarHardwareManagermoż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.
Publikacja androidx.car.app:app-*:1.1.0-rc01 Wersja 1.1.0-rc01 zawiera te zmiany.
Jest to wersja stabilizacyjna, która nie zawiera żadnych zmian w interfejsie API w porównaniu z wersją v1.1.0-beta01. Dodaliśmy nowe eksperymentalne funkcje (poziom API 4), które są przeznaczone dla 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
Publikacja androidx.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
Managerjako 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) - Dodano sprawdzanie nieprawidłowego użycia
CarSpanw interfejsie API (I65ae6) - Rozwiązaliśmy problem, który powodował, że jeśli podczas tworzenia elementu
Screenoznaczono go jako ukończony, stos pozostawał w nieprawidłowym stanie (I81b13). - Naprawiono problem, w którym
CarNotificationManager.notifyrejestrował błąd w przypadku AutomotiveOS, jeśli wCarAppExtender(I3633d) występowały działania z ikonami. - Dodano metodę uzgadniania wersji interfejsu API między aplikacją a hostem (I7d6f8).
Wersja 1.1.0-alpha02
21 lipca 2021 r.
Publikacja androidx.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 wersjiDesktop 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 w samochodach. - Więcej informacji i wytyczne dotyczące projektowania w zakresie korzystania z tych funkcji w jednostkach głównych w samochodzie, które są zgodne z interfejsem API na poziomie 3, znajdziesz w przewodniku dla deweloperów i w dokumentacji biblioteki.
Zmiany w interfejsie API
- Połączyliśmy metody cyklu życia
SessionControlleriScreenControllerw jedną metodęmoveToState(I1ed00). - Dodano
CarContext#getHostInfo()(I8977e) - Usunięto wycofane pola. (I67168)
- Zaktualizowano interfejsy
SessionControlleriScreenController, aby bezpośrednio udostępniać konstruktory (Iabf22). - Usunięto elementy
PinSignInMethod.BuilderiProviderSignInMethod.Builder(I9f0cb) - Dodano funkcję „setCarAppResult()”, aby umożliwić korzystanie z aplikacji opartych na szablonach „w celu uzyskania wyniku” w AAOS (I37741).
- Adnotacje w interfejsach
CarHardwarez parametrem@MainThread. (Ib2f85) - Nazwa
OnCarDataListenerzostała zmieniona naOnCarDataAvailableListener(I518ca) - Zaktualizowano nazwy metod
CarInfo,Speed,Mileagei dokumentację Javadoc. (I86672) - Zmieniono nazwę
TollnaTollCard. (I3e7c8) - Usunięto wycofany element
PinSignInMethod.getPin, który został zastąpiony przezPinSignInMethod.getPinCode(I996ce). - Usunięto
OnInputCompletedListener(zastąpiono tekstemInputCallback). (Ib5be1) - Zmieniono
PinSignInMethod, aby przyjmowaćCharSequencezamiastString(I275d5)
Poprawki błędów
- Poprawki Javadoc dla sprzętu samochodowego. (I2abbc)
Wkład zewnętrzny
Znane problemy
- W
SignInTemplateużycieInputSignInMethodmoże spowodowaćNullPointerExceptionw przypadku hosta samochodu. Ten problem zostanie rozwiązany 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
SignInTemplateiLongMessageTemplate, których można używać w przypadku procesów logowania, gdy pojazd jest zaparkowany. - Poziom interfejsu API 2: nowa obsługa interaktywności map w ramach
NavigationTemplate - Poziom interfejsu API 2: nowe wsparcie dla tekstu o różnej długości, które 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, które pomogą Ci korzystać z tych funkcji w hostach samochodowych zgodnych z poziomem interfejsu API 2, znajdziesz w przewodniku dla programistów i dokumentacji Javadoc biblioteki.
Zmiany w interfejsie API
- Wszystkie metody interfejsu
*Callbackzostały ustawione jako domyślne, a nazwaOnRequestPermissionsCallbackzostała zmieniona naOnRequestPermissionsListener(Ib3ec9). - Zaktualizowano
androidx.car.app.hardwareklas, aby usunąć niepotrzebne konstruktory i klasy parametrów. (I67beb) - Dodaliśmy
androidx.car.app.hardwareklasy umożliwiające dostęp do danych dotyczących samochodu, takich jak paliwo, bateria i prędkość. (Iff3c9) - Dodano obsługę
ActionStripnaMessageTemplate(Ida657) - Dodano:
setLoadingdo listyMessageTemplate. (I2a4b5) - Nazwa
ConnectionToCarzostała zmieniona naCarConnection(Ife9bd) - Zmiana
NavigationTemplatena zwracanie jawnej wartościPanModeDelegate(I13877) - Zaktualizowano kolejność parametrów w przypadku
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
Actionoraz 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
SurfaceCallbackdla aplikacji do nawigacji (Id5e9d) - Zaktualizowano
CarAppApiLeveldo 2 (Ic1540) - Dodano możliwość wysyłania próśb o uprawnienia z
CarAppService(I5421e) - Dodano adnotację
RequiresCarApi(2)do interfejsu API multi-text (Iacb62) - Zezwolenie na wiele wariantów tekstu w tytule szablonu z połową listy (Ib8df7)
- Dodano nowy element
LongMessageTemplate(wymaga interfejsu API Car na poziomie 2) (Ic5cee)
Poprawki błędów
- Zaktualizowano wymagania dotyczące rozmiaru obrazu, aby uwzględnić większe ekrany samochodowe (I116dc)
- Uniemożliwiono dodawanie więcej niż 2 działań w treściach szablonów (I32157)
- Zapewniono, że wszystkie utworzone
PendingIntentw bibliotece aplikacji samochodowych mają ustawione flagi. (If84fe, b/186394900) - Zaktualizowano dokumentację Javadoc, aby zezwalać na zmiany tekstu w
Rowjako odświeżanie (If3f9c) androidx.activity:activity:1.2.0jest teraz zależnością interfejsu API (Id1cb9)- W przypadku funkcji
SignInTemplateiLongMessageTemplatewprowadziliśmy wymaganie, aby w ich treści znajdowały się działania dostępne tylko podczas parkowania, a w dokumentacji zaktualizowaliśmy informacje, że będą one wyświetlane tylko wtedy, gdy samochód jest zaparkowany (Iddaa9). - Naprawiono wyjątek, który występuje podczas wycofywania elementu
Screenna początku (Ifcf40, b/184664896). - Dozwolony niestandardowy kolor tekstu w
ForegroundCarColorSpan(I69e59) - Rozwiązanie problemu polegającego na tym, że po
ON_DESTROYScreenON_DESTROYnaSessionwystępuje I52e01 (b/183696617). - Zaktualizowano dokumentację Javadoc dotyczącą sytuacji, w których można ustawić pozostały czas
TravelEstimatena nieznany. (I99610, b/183632456) - Zaktualizowano
Action, aby obsługiwaćForegroundColorSpanw 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 zależała od lifecycle-common-java8 (I8b8c8).
Znane problemy
- W
SignInTemplateklawiatura 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 do wprowadzania danych jest aktywne. - W Androidzie Auto w wersji 6.5 wywołania zwrotne przesuwania i powiększania w
SurfaceCallbackmogą być nieprawidłowo wywoływane w przypadku niektórych gestów dotykowych.
Wersja testowa aplikacji samochodowej 1.0.0
Wersja 1.0.0-alpha01
24 marca 2021 r.
Publikacja androidx.car.app:app-testing:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
To pierwsza wersja Jetpacka, która zawiera bibliotekę testową o zamkniętym kodzie źródłowym. 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
CarAppServiceControllerzostał zastąpiony nowym elementemSessionControllerna potrzeby testowania logiki związanej z czasem trwania połączenia z hotspotami.
Wersja 1.0.0
Wersja 1.0.0
21 kwietnia 2021 r.
Publikacja androidx.car.app:app:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
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 wysyłania
Screenna początku (70aae1, b/184664896). - Rozwiązaliśmy problem polegający na tym, że po
ON_DESTROYScreennaSessionpojawia sięON_DESTROY(0ceecb, b/183696617).
Wersja 1.0.0-rc01
24 marca 2021 r.
Publikacja androidx.car.app:app:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Usunięto błąd sytuacji wyścigu, w którym funkcja
NavigationManagerCallback#onStopNavigationbył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ązanie problemu z błędem
NullPointerException, który był zgłaszany, gdy aplikacja otrzymywała wywołaniestopNavigationpo 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 w stanie co najmniej
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.
Publikacja androidx.car.app:app:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Jest to pierwsza wersja Jetpack biblioteki, która wcześniej była oprogramowaniem zamkniętym. 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 deweloperó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.createHostValidatorweryfikacji, 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)