Рассмотрим экосистему приложений

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

Разработчики системных приложений могут учитывать эти факторы.

Настраиваемые контейнеры приложений

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

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

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

Передача информации о состояниях системы

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

Это повышает гибкость системных приложений, позволяя им реагировать на события, заданные на системном уровне. Например, действие NavigationCardActivity можно настроить на запуск при отсутствии активного сеанса навигации и приложения карты на экране. Кроме того, это позволяет системным приложениям менять цветовую схему в зависимости от централизованных сигналов светофоров, управляемых в зависимости от скорости транспортного средства.

Сторонние разработчики приложений

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

  • Размещение панели приложений: приложения могут размещаться на панелях разных размеров, что требует адаптивного дизайна пользовательского интерфейса. Это необходимо для приложений в любой многооконной конфигурации, а не из-за масштабируемости пользовательского интерфейса.

  • Обработка вставок: Приложения должны обрабатывать вставки (области экрана, занятые элементами системного пользовательского интерфейса или вырезами). Панели публикуют обновления своих вставок, что позволяет приложениям адаптироваться. Это обусловлено требованиями Android, согласно которым приложения должны обрабатывать изменения вставок системы, а не требованиями масштабируемого пользовательского интерфейса.

  • Режим погружения: следует рассмотреть приложения, использующие режим погружения (в котором системные панели могут быть скрыты, а приложение заполняет весь экран). Масштабируемый пользовательский интерфейс позволяет управлять определением режима погружения и расположением каждой панели в этом режиме.

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

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