Режим совместимости с автомобильной ОС Android

Чтобы упростить процесс переноса мобильных приложений на устройства Android Automotive OS, некоторые автомобили поставляются с режимом совместимости, который решает распространенные проблемы, возникающие при переносе существующих мобильных приложений в автомобили.

Хотя этот режим совместимости используется программой мобильных приложений Car ready , приложения, не входящие в эту программу, также могут работать в нем.

Понять режим совместимости

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

Обратная навигация

В отличие от других форм-факторов, устройствам Android Automotive OS не требуется наличие аппаратного или программного обеспечения для возврата устройств. Режим совместимости решает эту проблему, требуя наличия системного возврата устройств, например, аппаратной кнопки, программной кнопки или жеста. Это означает, что приложениям не нужно предоставлять собственные элементы управления возвратом устройств, если они предназначены только для устройств с режимом совместимости.

Пользователь может вернуться на предыдущий экран, даже если в пользовательском интерфейсе приложения такая возможность не предусмотрена.
Пользователь не может вернуться на предыдущий экран.

Рендеринг безопасной зоны

В автомобилях программные и аппаратные элементы, такие как системные панели и вырезы на дисплее, могут свести на нет предположения, сделанные при разработке приложений, предназначенных преимущественно для мобильных устройств. Режим совместимости решает эту проблему, размещая приложения в безопасной области.

Масштабирование плотности

Поскольку расстояние взаимодействия в автомобилях больше, чем на других устройствах с большим экраном, области касания и размеры шрифтов часто меньше рекомендуемых для использования в автомобиле. Режим совместимости решает эту проблему, позволяя OEM-производителям указывать коэффициент масштабирования DPI, используемый при рендеринге приложений.

Жизненный цикл деятельности

Как описано в статье «Добавление поддержки Android Automotive OS в ваше припаркованное приложение» , ОС автоматически блокирует работу вашего приложения, когда автомобиль переходит в режим вождения, чтобы не отвлекать водителя. На устройствах с режимом совместимости блокирующий пользовательский интерфейс OEM-производителя не должен быть прозрачным, чтобы ваше приложение не отображалось на экране и при блокировке переходило в состояние «Остановлено » .

Настроить режим совместимости

По умолчанию действия вашего приложения выполняются в режиме совместимости, если устройство поддерживает это. Действия не выполняются в режиме совместимости, если в манифесте присутствует элемент <uses-feature> для функции android.hardware.type.automotive :

<manifest ...>
  ...
  <uses-feature android:name="android.hardware.type.automotive" ...>
  ...
</manifest>

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

<application ...>
  ...
  <meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
  ...
</application>

Протестируйте свое приложение в режиме совместимости

Чтобы протестировать приложение в режиме совместимости, вы можете использовать универсальные образы системы с режимом совместимости или образы системы Android Automotive OS на планшете Pixel .

Определить поддержку устройства

Устройства, поддерживающие режим совместимости с Android Automotive OS, должны декларировать системную функцию android.software.car.display_compatibility . Чтобы узнать, какие устройства поддерживают эту функцию, воспользуйтесь каталогом устройств в Play Console.