Помимо рекомендаций, описанных в статье Как создать приложение для Android Automotive OS, которое можно использовать, когда автомобиль припаркован, есть некоторые требования, относящиеся к видеоприложениям.
Навыки работы с Android
Посмотреть на GitHubПриложения для Android for Cars, которые можно использовать, когда автомобиль припаркован
android skills add android-for-cars-parked-appsКак указать, что ваше приложение является видеоприложением
Чтобы указать, что ваше приложение является видеоприложением, добавьте атрибут android:appCategory="video" к элементу <application> в манифесте.
<manifest ...>
...
<application
...
android:appCategory="video">
...
</application>
</manifest>
Поддержка аудио во время вождения
В целом все видеоприложения должны приостанавливать воспроизведение, когда действуют ограничения, описанные в разделе Соблюдение требований к отвлекающим факторам.
Однако в некоторых автомобилях есть возможность показывать оптимизированные для вождения элементы управления воспроизведением, когда действуют ограничения для пользователей. Это позволяет продолжать воспроизведение аудио.
Как указать, что приложение поддерживает воспроизведение аудио во время движения
Чтобы указать, что ваше приложение поддерживает воспроизведение аудио во время вождения, добавьте в манифест следующий элемент <uses-feature>:
<manifest ...>
...
<uses-feature
android:name="com.android.car.background_audio_while_driving"
android:required="false" />
...
</manifest>
Поддержка фонового воспроизведения
Поскольку действия приложения скрыты из-за системных ограничений UX, приложение должно поддерживать фоновое воспроизведение, чтобы продолжать воспроизводить аудио во время вождения. Подробнее о том, как реализовать это с помощью библиотеки Media3…
Приложение должно отправлять уведомление MediaStyle, которое содержит MediaSession приложения. Если вы используете MediaSessionService, это обрабатывается по умолчанию.
Определите, какая поддержка вам нужна
Чтобы определить, поддерживает ли устройство воспроизведение аудио во время вождения, используйте класс CarFeatures из библиотеки androidx.car.app:app.
CarFeatures.isFeatureEnabled( context, CarFeatures.FEATURE_BACKGROUND_AUDIO_WHILE_DRIVING )
Используйте эту информацию, чтобы изменить поведение приложения в зависимости от возможностей устройства, на котором оно запущено. На устройствах, которые не поддерживают воспроизведение аудио во время вождения, приложение должно соответствовать требованию DD-2.
Проверьте звук во время вождения
Чтобы протестировать реализацию, вы можете симулировать вождение с помощью образа эмулятора, который поддерживает аудио во время вождения.
Часто задаваемые вопросы
Поддерживается ли технология DRM Widevine?
Да, Android Automotive OS поддерживает Widevine DRM L3.