Добавьте поддержку Android Auto в свое припаркованное приложение

На устройствах под управлением Android 15 или выше Android Auto поддерживает запуск приложений в поддерживаемых категориях припаркованных приложений непосредственно на головном устройстве. См. раздел Припаркованные приложения для получения дополнительной информации о пользовательском опыте припаркованных приложений на Android Auto.

Объявить о поддержке Android Auto

Чтобы объявить, что ваше приложение поддерживает Android Auto, необходимо включить следующий элемент <category> в фильтр намерений действия в манифесте вашего приложения:

<activity ...>
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        ...
        <category android:name="android.intent.category.CAR_LAUNCHER" />
    </intent-filter>
</activity>

Как правило, элемент категории android.intent.category.CAR_LAUNCHER можно поместить в тот же фильтр намерений, что и элемент android.intent.category.LAUNCHER , но при желании его можно поместить и в другой.

Записи манифеста, специфичные для категории

В дополнение к предыдущему требованию, игры имеют дополнительное требование. См. Отметить свое приложение как игру .

Поддержка распространенных размеров экрана Android Auto

Для лучшего пользовательского опыта мы рекомендуем сделать ваше приложение полностью адаптивным к различным размерам экрана. Как минимум, чтобы обеспечить высокое качество опыта в различных автомобилях, поддерживающих Android Auto, приложения не должны быть значительно зажаты на горизонтальных экранах, как указано в руководстве по качеству автомобильных приложений DO-2 .

Например, если приложение работает в портретном соотношении сторон с Pillarboxing на ландшафтном экране, оно будет отклонено при рассмотрении в Play Store. Приложение, работающее в ландшафтном соотношении сторон с минимальным Pillarboxing на ландшафтном экране, является приемлемым, как и приложение, работающее в ландшафтном соотношении сторон с Letterboxing на портретном экране.

Тест на соответствие каноническим размерам экрана

При создании и тестировании приложения для Android Auto вы можете использовать следующие конфигурации настольного головного устройства (DHU), чтобы проверить, соответствует ли ваше приложение вышеуказанным требованиям:

Маленький Пейзаж

[general]
resolution = 800x480
dpi = 160
...

Широкий ландшафт

[general]
resolution = 1920x1080
dpi = 160
marginheight = 596
normalizedpi = true
cropmargins = true
...

Портрет

[general]
resolution = 1920x1080
dpi = 160
marginwidth = 878
normalizedpi = true
cropmargins = true
...

Обнаружение использования на Android Auto

Если вы хотите определить, когда ваше приложение используется через Android Auto (например, в целях аналитики), вы можете рассмотреть два сигнала:

  • Состояние соединения, сообщаемое API CarConnection . Когда Android Auto подключен, это будет CONNECTION_TYPE_PROJECTION .
  • Идентификатор активного дисплея. Когда ваше приложение работает на дисплее, отличном от встроенного экрана, например, при использовании через Android Auto, это значение отличается от DEFAULT_DISPLAY .

В следующем фрагменте показано, как объединить эти сигналы для определения использования через Android Auto:

val connectionType = ...
val displayId = context.display.displayId
isRunningOnAndroidAuto = connectionType == CONNECTION_TYPE_PROJECTION and displayId != DEFAULT_DISPLAY