Każda wersja Androida wprowadza zmiany w interfejsie API i zachowaniu, które wpływają na działanie aplikacji na Androida Auto i system operacyjny Android Automotive. Na tej stronie znajdziesz szczegółowe informacje o wielu z tych zmian i dowiesz się, jak zaktualizować aplikację, aby obsługiwała nowe wersje Androida.
Android 16
- Android Auto korzysta z zastąpień właściciela urządzenia wirtualnego, aby ignorować ograniczenia dotyczące orientacji, proporcji i możliwości zmiany rozmiaru podczas uruchamiania aplikacji w trybie parkowania.
- Jeśli Twoja aplikacja korzysta z aktualizacji Androida 16 dotyczących bezpieczniejszych intencji, może być konieczne określenie atrybutu
android:intentMatchingFlagselementu<service>dlaCarAppServicejakoallowNullAction, aby umożliwić Androidowi Auto i systemowi operacyjnemu Android Automotive łączenie się z Twoją usługą.
Android 15
Aplikacje na system operacyjny Android Automotive, które korzystają z biblioteki aplikacji Android do samochodu, muszą zostać zaktualizowane do wersji 1.7.0-rc01 lub nowszej. Zapobiega to awariom podczas działania na Androidzie 15 lub nowszym, które mogą być spowodowane zmianami w bezpiecznym uruchamianiu aktywności w tle, gdy pojawiają się okna z prośbą o uprawnienia.
Ze względu na zmiany w przestrzeni w oknie w przypadku aplikacji kierowanych na Androida 15 lub nowszego należy przetestować aplikacje rozpowszechniane w systemie operacyjnym Android Automotive, aby sprawdzić, czy aktywności zaimplementowane w aplikacji są renderowane zgodnie z zamierzeniami. Więcej informacji o kwestiach związanych z systemem operacyjnym Android Automotive znajdziesz w artykule Praca z wcięciami w oknie i wycięciami na wyświetlaczu.
Android 14
- Ze względu na wymaganie dotyczące aplikacji kierowanych na Androida 14 lub nowszego, zgodnie z którym typy usług działających na pierwszym planie są wymagane, sprawdź, czy określasz typ usługi działającej na pierwszym planie w przypadku wszystkich usług działających na pierwszym planie w aplikacji, takich jak usługi nawigacji i odtwarzania multimediów.
- Ze względu na wymaganie dotyczące aplikacji kierowanych na Androida 14 lub nowszego, zgodnie z którym odbiorniki zarejestrowane w czasie działania muszą określać działanie dotyczące eksportu, aplikacje korzystające z interfejsu
CarConnectionAPI powinny zostać zaktualizowane do wersjiandroidx.car.app:app:1.3.0-beta01lub nowszej. Zobacz Connection API (materiały w języku angielskim). - Ze względu na zmiany w Androidzie Auto na urządzeniach z Androidem 14 lub nowszym uruchamianie aktywności na ekranie telefonu z poziomu aplikacji Android Auto wymaga podania
ActivityOptionsz identyfikatorem wyświetlacza ustawionym na identyfikator wyświetlacza telefonu (DEFAULT_DISPLAY) podczas wywoływaniastartActivity().- Aplikacje, które korzystają z metody
CarContext.requestPermissions(), powinny zostać zaktualizowane do wersjiandroidx.car.app:app:1.7.0-alpha01lub nowszej, która zawiera tę poprawkę.
- Aplikacje, które korzystają z metody
Android 13
- W przypadku aplikacji utworzonych przy użyciu biblioteki aplikacji Android do samochodu ustawienia regionalne
Configurationdostarczane przezCarContextodzwierciedlają ustawienia języka poszczególnych aplikacji w aplikacji hosta, a nie w Twojej aplikacji.
Android 12
- Na urządzeniach z Androidem 12 lub nowszym Android Auto nie zmienia trybu interfejsu urządzenia podczas działania. Zobacz Jak wykryć, czy Android Auto jest uruchomiony?
- Ze względu na wymagania dotyczące bezpieczniejszego eksportowania komponentów w przypadku aplikacji kierowanych na Androida 12 lub nowszego musisz jawnie zadeklarować atrybut
android:exportedw elemencie<service>dla usługMediaBrowserServiceiCarAppService. - Ze względu na wymagania dotyczące zmienności intencji oczekujących w przypadku aplikacji kierowanych na Androida 12 lub nowszego musisz wyraźnie określić zmienność każdej intencji oczekującej utworzonej przez Twoją aplikację. Dotyczy to na przykład intencji oczekujących używanych przez aplikacje do obsługi wiadomości do odpowiadania na wiadomości lub oznaczania ich jako przeczytane.