Tworzenie aplikacji wideo na system operacyjny Android Automotive

Oprócz wytycznych opisanych w wytycznych dotyczących tworzenia zaparkowanych aplikacji na system operacyjny Android Automotive istnieją pewne wymagania dotyczące aplikacji wideo.

.

Oznaczanie aplikacji jako aplikacji do oglądania filmów

Aby wskazać, że Twoja aplikacja obsługuje filmy, dodaj plik XML o nazwie automotive_app_desc.xml do katalogu res/xml/ w projekcie. W tym pliku umieść te informacje:

<automotiveApp>
  <uses name="video"/>
</automotiveApp>

Następnie w elemencie <application> pliku manifestu dodaj element <meta-data> odwołujący się do pliku XML:

<meta-data
  android:name="com.android.automotive"
  android:resource="@xml/automotive_app_desc"/>

Obsługa dźwięku podczas jazdy

Dźwięk podczas jazdy jest funkcją beta.
Publikowanie aplikacji obsługujących dźwięk podczas jazdy jest ograniczone do partnerów z wcześniejszym dostępem. Podczas gdy ta funkcja jest w wersji beta, możesz przygotować swoją aplikację do obsługi, postępując zgodnie ze wskazówkami podanymi w tej sekcji.

Ogólnie rzecz biorąc, wszystkie aplikacje do odtwarzania filmów muszą wstrzymywać odtwarzanie, gdy są aktywne ograniczenia dotyczące interakcji z użytkownikiem, zgodnie z opisem w artykule Zapewnienie braku aktywności zoptymalizowanej pod kątem rozpraszania uwagi.

Niektóre pojazdy umożliwiają jednak wyświetlanie elementów sterujących odtwarzaniem dostosowanych do jazdy, gdy aktywne są ograniczenia dotyczące wrażeń użytkownika, co pozwala na kontynuowanie odtwarzania dźwięku.

Sterowanie odtwarzaniem zoptymalizowane pod kątem jazdy w przypadku aplikacji obsługującej dźwięk podczas jazdy.
Rysunek 1. Sterowanie odtwarzaniem zoptymalizowane pod kątem jazdy dla aplikacji obsługującej odtwarzanie dźwięku podczas jazdy.

Potwierdź, że Twoja aplikacja obsługuje dźwięk podczas jazdy

Aby wskazać, że Twoja aplikacja obsługuje dźwięk podczas jazdy, dodaj w pliku manifestu element <uses-feature>:

<application ...>
    ...
    <uses-feature android:name="com.android.car.background_audio_while_driving" android:required="false">
    ....
</application>

obsługa odtwarzania w tle,

Działania aplikacji są ukryte przez ograniczenia systemu UX, dlatego aplikacja musi obsługiwać odtwarzanie w tle, aby można było kontynuować odtwarzanie dźwięku podczas jazdy. Szczegółowe informacje o tym, jak to zrobić za pomocą biblioteki Media3, znajdziesz w artykule Odtwarzanie w tle za pomocą MediaSessionService.

Aplikacja musi wyświetlać powiadomienie MediaStyle, które zawiera informacje o MediaSession. Jeśli używasz MediaSessionService, to jest to obsługiwane domyślnie.

Określanie pomocy

Aby sprawdzić, czy urządzenie obsługuje dźwięk podczas jazdy, możesz użyć klasy CarFeatures z biblioteki androidx.car.app:app.

CarFeatures.isFeatureEnabled(context, CarFeatures.FEATURE_BACKGROUND_AUDIO_WHILE_DRIVING)

Używaj tych informacji, aby modyfikować działanie aplikacji w zależności od możliwości urządzenia, na którym jest ona uruchomiona. Na urządzeniach, które nie obsługują dźwięku podczas jazdy, aplikacja musi być zgodna z wytycznymi DD-2.

Testowanie dźwięku podczas jazdy

Aby przetestować implementację, możesz symulować jazdę, używając obrazu emulatora, który obsługuje dźwięk podczas jazdy.

Najczęstsze pytania

Czy obsługiwany jest DRM Widevine?

Tak, Widevine DRM L3 jest obsługiwany w systemie Android Automotive.