Создание видеоприложений для Android Automotive OS

В дополнение к рекомендациям, описанным в разделе Создание припаркованных приложений для Android Automotive OS , существуют некоторые требования, специфичные для видеоприложений.

Отметьте свое приложение как видеоприложение

Чтобы указать, что ваше приложение является видеоприложением, добавьте атрибут android:appCategory="video" к элементу <application> вашего манифеста.

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

Поддержка звука во время вождения

Звук во время вождения — это бета-функция
Публикация приложений с поддержкой аудио во время вождения доступна только партнёрам с ранним доступом. Пока эта функция находится в стадии бета-тестирования, вы можете подготовить своё приложение к поддержке, следуя инструкциям в этом разделе.

Как правило, все видеоприложения должны приостанавливать воспроизведение, когда активны ограничения пользовательского опыта, как описано в разделе «Соблюдение требований по отвлечению внимания водителя» .

Однако некоторые транспортные средства имеют возможность отображать оптимизированные для вождения элементы управления воспроизведением, даже когда действуют ограничения пользовательского опыта, что позволяет продолжать воспроизведение аудио.

Оптимизированные элементы управления воспроизведением для приложения, поддерживающего воспроизведение звука во время вождения.
Рисунок 1 : Управление оптимизированными элементами управления воспроизведением для приложения, поддерживающего воспроизведение звука во время вождения.

Заявите, что ваше приложение поддерживает воспроизведение звука во время вождения

Чтобы указать, что ваше приложение поддерживает воспроизведение звука во время вождения, добавьте в манифест следующий элемент <uses-feature> :

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

Поддержка фонового воспроизведения

Поскольку действия вашего приложения скрыты системными UX-ограничениями, оно должно поддерживать фоновое воспроизведение, чтобы продолжать воспроизводить аудио во время вождения. Подробнее о том, как реализовать это с помощью библиотеки Media3, см. в разделе Фоновое воспроизведение с помощью MediaSessionService .

Ваше приложение должно публиковать уведомление MediaStyle , включающее MediaSession вашего приложения. Если вы используете MediaSessionService , это выполняется автоматически .

Определить поддержку

Чтобы определить, поддерживает ли устройство воспроизведение звука во время вождения, можно использовать класс CarFeatures из библиотеки androidx.car.app:app .

CarFeatures.isFeatureEnabled(context, CarFeatures.FEATURE_BACKGROUND_AUDIO_WHILE_DRIVING)

Используйте эту информацию, чтобы настроить поведение вашего приложения в зависимости от возможностей устройства, на котором оно работает. На устройствах, не поддерживающих воспроизведение звука во время вождения, ваше приложение всё равно должно соответствовать требованиям DD-2 .

Проверьте звук во время вождения

Чтобы протестировать реализацию, вы можете смоделировать вождение , используя изображение эмулятора, поддерживающее звук во время вождения .

Часто задаваемые вопросы

Поддерживается ли Widevine DRM?

Да, Widevine DRM L3 поддерживается в Android Automotive OS.