В Android 16 QPR2 была представлена функция обратного чтения данных с экрана (DPU), адаптированная для использования в производственной среде. Функция обратного чтения с экрана (DPU) впервые была представлена в Android 9 для тестирования вывода данных с помощью Hardware Composer (HWC), используя аппаратный блок для «считывания» пикселей с экрана в доступную для ЦП память. В производственной среде функцию обратного чтения с экрана (DPU) можно использовать для сценариев, требующих захвата полноэкранного контента.
Варианты использования
Аппаратное обеспечение обратной связи подходит для:
Анимации, требующие изменения статического состояния всего экрана, например, анимация выключения питания.
Примеры использования искусственного интеллекта (ИИ), требующие знания содержимого экрана в защищенном анклаве.
Автоматизированное тестирование
Аппаратное обеспечение для обратной связи не подходит для:
Захват подмножества состояния экрана, исключающего или скрывающего другое видимое содержимое экрана.
Перехват контента, защищенного DRM, и его передача в незащищенную среду.
Включить обратную связь
Для включения обратной связи:
Используйте
IComposerClient::getReadbackBufferAttributes, чтобы указать, что реализация HWC должна сообщать атрибуты буфера для обратного чтения.Включите системное свойство
debug.sf.productionize_readback_screenshot.Это сигнализирует системе о том, что считывание данных с DPU происходит эффективно, не содержит визуальных ошибок и готово к использованию в производственной среде.
Используйте API системы
ScreenCaptureдля запроса снимка экрана с использованием DPU. Система пытается использовать считывание данных с DPU, если это возможно, но клиенты API могут потребовать этого, передав флагCAPTURE_MODE_REQUIRE_OPTIMIZED.
Проверка считывания
Мы рекомендуем протестировать несколько сценариев взаимодействия пользователя с системой, уделяя особое внимание производительности, корректности и энергопотреблению. Протестируйте перечисленные выше сценарии, чтобы убедиться в приемлемой производительности и отсутствии визуальных ошибок, таких как мерцание экрана или непреднамеренное изменение цвета.