当您加载跟踪后,点击查看跟踪即可可视化上传的跟踪。每个跟踪的标签页都会显示在窗口的顶部面板上。如果上传的文件包含相关跟踪,则屏幕录制跟踪或屏幕截图的浮动视图会叠加在屏幕上
图 1. 在 Winscope 上查看跟踪。
以下部分介绍了查看跟踪屏幕上的 UI 元素。
矩形
适用于 Winscope 视图(例如 WindowManager、SurfaceFlinger 和 ViewCapture)的 LAYERS 面板包含跟踪中的矩形元素,这些元素在视觉上表示它们在 Z 轴上的位置和顺序。
通过 LAYERS 面板上的导航控件,您可以修改绘制矩形图层的模式,以及它们的间距和旋转
图 2. 矩形控件。
渐变格式
为了更有效地检查层次结构中的所有元素,您可以使用矩形格式按钮将矩形绘制格式切换为渐变。在渐变格式中,矩形格式按钮变为浅灰色。
在此模式下,每个矩形的透明度都会根据其 Z 顺序降低,Z 顺序较高的矩形会更透明。这样您就可以查看层次结构中的所有元素,而无需担心矩形彼此遮挡
图 3. 矩形渐变。
不透明度格式
要将矩形绘制格式更改为不透明度,请点击矩形格式按钮。在不透明度格式中,矩形格式按钮变为深灰色。
在此模式下,每个矩形都根据其不透明度(例如表面或视图不透明度)绘制
图 4. 矩形不透明度。
线框格式
要将矩形表示形式更改为线框,请点击矩形格式按钮。此表示形式使您可以更轻松地检查和分析层次结构中的各个元素。在线框格式中,矩形格式按钮变为没有阴影的轮廓
图 5. 矩形线框。
旋转
使用旋转滑块更改矩形在 0 到 45 度之间的透视角度,让您可以发现元素超出屏幕的情况
图 6. 矩形旋转。
间距
使用间距滑块控制图层之间的间距,创建扁平化或更分散的视图,以便更好地检查元素 Z 顺序
图 7. 矩形朝向。
显示屏和窗口选择
在 SurfaceFlinger 视图中,当在具有多个显示屏的设备上记录数据时,菜单会显示可用的显示屏,以便您可以仅选择感兴趣的显示屏。
在 ViewCapture 中,当记录多个系统窗口(例如通知栏、任务栏和启动器)时,菜单会列出可用的窗口。
平移和缩放
您可以通过点击矩形区域并拖动鼠标来水平或垂直调整矩形的位置。要放大、缩小或重置缩放级别,您可以使用滚动轮或控制栏上的缩放按钮。
层次结构
Winscope 查看器通常包含层次结构查看器。图 1 中的查看器描绘了基于正在分析的跟踪的各种层次结构。例如,查看器可以显示 WindowManager 中的窗口层次结构或系统 UI 窗口中的视图层次结构。
有关特定层次结构类型的信息,请参阅有关各个跟踪的部分。
本节介绍了常规层次结构用法,例如 显示差异、仅显示 V、扁平 和 搜索 功能。
图 8. 层次结构控件。
显示差异
启用 显示差异 功能后,Winscope 会自动监控并显示当前状态和上一个状态之间的更改。显示差异功能以红色突出显示已移除的元素,以蓝色突出显示已修改的元素,并以绿色突出显示新创建的元素。这种可视化表示形式可以更快地识别和理解两种状态之间的差异,从而更轻松地跟踪更改和识别潜在问题。
图 9. 显示差异层次结构。
搜索和过滤
层级查看器提供 search 功能,该功能使用正则表达式 (regex)。此过滤器以元素的名称及其值(对于属性)为目标。当过滤器在层级结构中匹配到子元素时,从该子元素到树根的整个父级链都将变为可见,如下图所示
图 10. 搜索层级结构。
仅显示可见项
使用仅显示可见项功能,您可以过滤掉层级结构中的所有隐藏元素。默认情况下,Winscope 会同时显示可见和不可见元素。可见元素以黑色绘制,而不可见元素以灰色显示。
平面
平面按钮通过消除元素之间的父子关系来重新组织层级结构。此操作将使所有元素位于同一级别。当与仅显示可见项选项结合使用时,生成的层级结构将仅显示可见元素,不包括其父元素,如下图所示
图 11. 平面层级结构。
属性
在 Winscope 中,许多查看器都集成了属性查看器。此查看器显示与从层级视图中选择的元素关联的各种属性列表。例如,查看器可以显示 WindowManager 中 Activity 的属性或 System UI 中 View 的属性。
有关特定属性的信息,请参阅关于 SurfaceFlinger、WindowManager 和 View Capture 跟踪的部分。
本节介绍显示差异、搜索和显示默认值功能中的常规层级结构。
显示差异
显示差异功能的使用方法与层级视图中的显示差异相同。
搜索和过滤
搜索功能的使用方法与层级视图中的搜索相同。
显示默认值
默认情况下,Winscope 仅显示已修改的属性值,这些属性值是其各自数据类型的非默认值。例如,Winscope 会省略布尔值的 false
、整数的 0
、对象的 null
和数组的 []
。这种简化操作简化了用户可见的属性列表。但是,在某些情况下,全面了解所有元素相关信息是有益的。在这种情况下,显示默认值选项会显示 Winscope 中的所有可用属性,包括那些具有空值或 null 值的属性。
图 12. 属性默认值。
通用快捷键
Winscope 支持以下快捷键
图 13. 通用快捷键。