Самый быстрый и простой способ протестировать вторичные дисплеи — использовать симулированный дисплей, принадлежащий системе. Поскольку он разделяет UID system_server
, он является доверенным и ему разрешено размещать все окна декора и действия.
Если у вас есть устройство, поддерживающее аппаратное подключение (например, HDMI или DisplayPort через USB-C), вы можете использовать внешние аппаратные дисплеи для тестирования.
По умолчанию виртуальные дисплеи, не принадлежащие системному UID, считаются недоверенными , и для предотвращения утечки пользовательских данных применяется ряд ограничений.
Используйте режим рабочего стола для тестирования новых функций и возможностей оконного интерфейса, добавленных в платформу в Android 10. Это опция для разработчиков приложений, которая позволяет разработчикам тестировать приложения в средах с несколькими дисплеями и окнами произвольной формы.
Рисунок 1. Режим рабочего стола на двух дисплеях, имитируемом (вверху) и внешнем (внизу)
Если производители устройств хотят обеспечить взаимодействие, подобное настольному компьютеру, используйте эту функцию, чтобы продемонстрировать рекомендуемый способ реализации некоторых функций управления окнами.
- Включите опцию разработчика «Принудительный режим рабочего стола» .
- Перезагрузите телефон.
- Подключите мышь (через USB или Bluetooth).
- Создайте имитацию дисплея с помощью опций разработчика или используйте аппаратный дисплей.
- Запускайте действия с помощью панели запуска на этом дисплее и используйте мышь для взаимодействия.
MD Launcher ( platform/development/samples/MultiDisplay
) полезен для тестирования запуска целевого действия и запроса нового экземпляра.