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
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.
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.