Tool for visualizing window manager traces
Developing WinScope
When the trace is enabled, Window Manager and Surface Flinger capture and
save current state to a file at each point of interest.
frameworks/base/core/proto/android/server/windowmanagertrace.proto
and frameworks/native/services/surfaceflinger/layerproto/layerstrace.proto
contain the proto definitions for their internal states.
Checking out code and setting up environment
- Install Yarn, a JS package manager
- Download Android source
- Navigate to
development/tools/winscope - Run
yarn install
Building & testing changes
- Navigate to
development/tools/winscope - Run
yarn run dev
Building with internal extensions
Internal paths in vendor/ which are not available in AOSP must be replaced by stub files. See getWaylandSafePath for an example