Tworzenie aplikacji wideo na system operacyjny Android Automotive

Kategoria wideo w Androidzie Auto (wersja beta)
Wyraź zainteresowanie udostępnieniem swojej aplikacji wideo w Androidzie Auto.

Oprócz wytycznych opisanych w artykule Tworzenie aplikacji na system operacyjny Android Automotive, które będą działać po zaparkowaniu, obowiązują też pewne wymagania dotyczące aplikacji wideo.

Oznaczanie aplikacji jako aplikacji wideo

Aby wskazać, że Twoja aplikacja jest aplikacją wideo, dodaj atrybut android:appCategory="video" do elementu <application> w pliku manifestu.

<manifest ...>
    ...
    <application
      ...
      android:appCategory="video">
        ...
    </application>
</manifest>

Obsługa dźwięku podczas jazdy

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

Ogólnie rzecz biorąc, wszystkie aplikacje wideo muszą wstrzymywać odtwarzanie, gdy aktywne są ograniczenia dotyczące wrażeń użytkownika , zgodnie z opisem w artykule Spełnianie wymagań dotyczących rozpraszania kierowcy.

Jednak niektóre pojazdy mogą wyświetlać zoptymalizowane pod kątem jazdy elementy sterujące odtwarzaniem, gdy aktywne są ograniczenia dotyczące wrażeń użytkownika, co umożliwia dalsze odtwarzanie dźwięku.

Elementy sterujące odtwarzaniem zoptymalizowane pod kątem jazdy w przypadku aplikacji obsługującej dźwięk podczas jazdy.
Rysunek 1.: zoptymalizowane pod kątem jazdy elementy sterujące odtwarzaniem w aplikacji, która obsługuje dźwięk podczas jazdy.

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

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

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

Obsługa odtwarzania w tle

Ponieważ aktywności aplikacji są ukryte przez ograniczenia dotyczące wrażeń użytkownika, aplikacja musi obsługiwać odtwarzanie w tle, aby odtwarzać dźwięk podczas jazdy. Więcej informacji o tym, jak to zrobić za pomocą biblioteki Media3, znajdziesz w artykule Odtwarzanie w tle za pomocą MediaSessionService.

Aplikacja musi wysyłać powiadomienie MediaStyle, które zawiera MediaSession aplikacji. Jeśli używasz MediaSessionService, ta czynność jest domyślnie wykonywana za Ciebie.

Określanie obsługi

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żyj tych informacji, aby zmodyfikować działanie aplikacji w zależności od możliwości urządzenia, na którym jest uruchomiona. Na urządzeniach, które nie obsługują dźwięku podczas jazdy, aplikacja musi nadal spełniać DD-2 wytyczną.

Testowanie dźwięku podczas jazdy

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

Najczęstsze pytania

Czy obsługiwany jest system DRM Widevine?

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