跳转到内容

性能监控

性能监控在设备运行时持续采样并绘制图表。这是最常用的模块,也是最需要正确解读数据的模块。

  1. 选中设备,并将统计范围设为目标 App。
  2. 打开 性能监控。
  3. 点击开始,在设备上操作 App,完成后点击停止。

图表实时显示,采集结果会保存下来供后续查看。

以单核百分比计算,因此在多核设备上超过 100% 属于正常现象,表示有多个核心在工作。重点关注曲线形状:滑动时稳定在 40% 属于正常负载;从 5% 的基线突然升至 90% 并持续 200 毫秒,则通常意味着一次卡顿。

GPU 占用率。GPU 占用高但帧率稳定,说明没有问题;GPU 占用高且帧率下降,说明瓶颈在渲染,常见原因有过度绘制、图层过多、触发离屏渲染的效果等。

进程的常驻内存。请关注趋势而非单个数值:呈锯齿状并回落到同一基线,属于正常的缓存行为;呈阶梯状持续上升且不回落,则可能存在泄漏。内存增长过快的进程会被 iOS 终止,这类终止在崩溃报告中表现为没有异常信息的崩溃。

实际呈现的帧数,详见帧率与卡顿。平均帧率本身参考价值有限,应重点关注帧率下降的时刻。

进程的收发字节数。这里统计的是流量而非内容,性能模块只统计、不解析。例如某个页面一打开就下载数 MB 数据,可以在这条曲线上直接发现。如需查看请求本身,请使用 SniffMaster。

显示的是能耗影响值,而非毫安时。它适合用于对比,例如新旧版本对比、您的 App 与其他 App 对比,不适合作为绝对值使用。如需跨天的绝对数据,请查看使用记录。

在两个 App 上采集同一段操作,并将两次结果并排对比。只有通过对比,才能客观判断 App 是否“过重”。

小程序运行在宿主 App 中,统计宿主 App 时会包含其中的所有内容。分析小程序本身的问题时,请将统计范围设为小程序的进程。

  • 每次采集相同的操作。 例如同一个列表、相同的滑动距离。不同操作的采集结果无法对比。
  • 等待设备稳定。 App 启动后的前几秒主要是冷启动开销。
  • 注意设备温度。 设备发热后会降频,此时的采集结果反映的是温度影响,而非代码问题。
  • 使用用户常用的机型。 最新旗舰机型的表现不能代表用户的实际情况。

性能概况免费使用。性能图表每次启动可试用 1 分钟,性能历史仅限 VIP,详见价格。

帧率与卡顿 · 能耗 · 使用记录