Запустите Winscope локально или получите к нему доступ через веб-сервер.
С помощью Winscope можно записывать трассировки для локальной разработки и отладки. Winscope использует adb , который поддерживает подключение устройств через USB или Wi-Fi.
При запуске Winscope появляется экран «Сбор трассировок» .
Подключение устройства
В Winscope можно подключать устройства с помощью Winscope Proxy или Web Device Proxy . По умолчанию на главной странице Winscope отображается интерфейс настройки подключения Winscope Proxy .
Для начала записи трассировки выберите один из следующих способов подключения устройства.
Настройка прокси-сервера Winscope
Выполните следующие действия для настройки прокси-сервера Winscope:
В разделе «Сбор трассировок» на главной странице выберите Winscope Proxy в меню «Выбор типа подключения» :

Рисунок 1. Трассировка захвата с помощью Winscope Proxy.
Для захвата трассировки непосредственно из браузера запустите прокси-сервер Winscope ADB Connect, выполнив следующую команду:
python3 $ANDROID_BUILD_TOP/development/tools/winscope/src/adb/winscope_proxy.pyОбратите внимание на токен прокси Winscope, отображаемый в терминале после выполнения.
После запуска прокси-сервера Winscope ADB Connect экран изменится следующим образом. Для установления первоначального соединения с прокси-сервером введите токен прокси-сервера Winscope из шага 3 и нажмите «Подключиться» .

Рисунок 2. Подключение к прокси-серверу Winscope.
Настройка веб-прокси для устройств
Выполните следующие шаги для настройки веб-прокси для устройств:
В разделе «Сбор трассировок» на главной странице выберите «Веб-прокси устройства» в меню «Выберите тип подключения» :

Рисунок 3. Трассировка захвата с помощью веб-прокси для устройств.
Если на вашем компьютере отсутствует демон Web Device Proxy, нажмите «Установить» или запустите установщик .
Разрешите доступ источника к Web Device Proxy через диалоговое окно.

Рисунок 4. Авторизация происхождения.
Разрешите доступ для каждого нового устройства при первом подключении к нему. Если диалоговое окно не появляется автоматически, нажмите значок
lock_openрядом с устройством:
Рисунок 5. Авторизация устройства.
Следы
Выполните следующие шаги для сбора данных:
После подключения для запуска процесса захвата выберите целевые объекты и настройте параметры. Затем нажмите « Начать трассировку» , чтобы начать захват:

Рисунок 6. Сбор данных трассировки в Winscope.
Чтобы остановить запись, нажмите «Завершить трассировку» :

Рисунок 7. Конечная трассировка в Winscope.
Параметры трассировки
В этом разделе описаны параметры для каждого типа трассировки.
Запись экрана
С помощью Winscope вы можете записывать экран нескольких мониторов. Выберите монитор из меню для записи экрана. Если вы ничего не выберете, Winscope по умолчанию будет записывать активный монитор.
SurfaceFlinger
Размер буфера: регулирует размер кольцевого буфера в оперативной памяти для трассировки SurfaceFlinger. Больший размер буфера позволяет собирать больше данных, но увеличивает использование памяти.
Ввод: Если поверхность содержит входные данные, отслеживает особенности входного окна.
Композиция: Отслеживает тип композиции и видимую область.
Метаданные: Отслеживает дополнительные метаданные поверхности, включая слои, находящиеся за пределами видимой области экрана.
HWC: Отслеживает дополнительные неструктурированные метаданные компоновщика оборудования.
Трассировка буферов: Настраивает SurfaceFlinger для отслеживания всех изменений буферов на поверхности. По умолчанию SurfaceFlinger отслеживает новое состояние только при изменении геометрии.
Виртуальные дисплеи: Включает слои виртуальных дисплеев в трассировку.
Менеджер окон
- Размер буфера: регулирует размер кольцевого буфера в оперативной памяти для трассировки WindowManager. Больший размер буфера позволяет собирать больше данных, но увеличивает использование памяти.
Тип трассировки: Определяет параметры частоты сбора состояний:
- frame: В этом режиме WindowManager сохраняет одно состояние за кадр, гарантируя, что будут зафиксированы только допустимые состояния WindowManager. Этот режим имеет наименьшие накладные расходы на производительность.
- Транзакция: В этом режиме состояние WindowManager записывается всякий раз, когда транзакция подтверждается. Вы можете подтвердить несколько транзакций в рамках одного кадра, что позволяет отлаживать промежуточные состояния WindowManager во время работы кадра. Однако этот режим имеет более высокие накладные расходы на производительность по сравнению с режимом работы с кадрами.
Уровень трассировки: определяет уровень детализации трассировки WindowManager:
- Подробный вывод: включает информацию обо всех окнах и конфигурацию каждого окна. Этот режим имеет наибольшие накладные расходы на память и производительность.
- debug: Содержит информацию обо всех окнах, но регистрирует только конфигурацию окна, если она содержит запрошенную конфигурацию переопределения.
- Критический режим: содержит ту же информацию, что и режим отладки, но отображает только видимые окна. Этот режим имеет наименьшие накладные расходы на память и производительность.
Дампы
Чтобы создать дамп состояния с помощью Winscope, в разделе «Сбор трассировок» на главной странице выберите вкладку «Дамп» , а затем нажмите «Создать дамп состояния» :

Рисунок 8. Состояние дампа в Winscope.
Настройка скриншота
Winscope позволяет делать снимки экрана для нескольких дисплеев. Выберите дисплей из меню, чтобы сделать снимок экрана. Если ничего не выбрано, снимок экрана будет сделан для активного дисплея.