Android 卡顿验证方法1:系统跟踪 Perfetto

说明

“系统跟踪”应⽤是⼀款⽤于将设备活动保存到跟踪⽂件的 Android ⼯具。

什么是Perfetto?

Perfetto 是 Android 10 中引⼊的全新平台级跟踪⼯具。
Android 10(API 级别 29)或更⾼版本的设备上,跟踪⽂件会以 Perfetto 格式保存;
⽣成的跟踪⽂件存储在设备的“/data/local/traces”⽬录下,⽂件的后缀名为“.perfetto-trace“;

Perfetto系统跟踪⼯具的使⽤⽅法

第⼀种⽅法:在设备上直接捕获系统跟踪记录
搭载 Android 9(API 级别 28)或更⾼版本的设备包含⼀个名为 System Tracing 的系统级应⽤。(系统内置包)
允许开发者直接从测试设备本⾝录制跟踪记录,⽽⽆需插⼊设备并通过 ADB 连接到该设备。

  1. 开启设备的“开发者选项”功能
  2. 在“开发者选项”菜单中找到“系统跟踪”(System Tracing)选项
  3. 进⼊到“系统跟踪选项”(System Tracing),会显⽰如下图的菜单
  4. 打开“系统跟踪”菜单中的“跟踪可调试应⽤”(Trace debuggable applications)选项,以包含已在系统跟踪中启⽤调试功能的
    应⽤。
  5. (可选)在“系统跟踪”(System Tracing)菜单中的“类别“(Categories)选项中选择正在测试的⽤例相对应的类别;并选
    择”每个cpu的缓冲空间“(Per-CPU buffer size以 KB 为单位)
  6. 打开“系统跟踪”(System Tracing)菜单中的“显⽰快捷设置”(Show Quick Settings tile)选项,则会在设备屏幕上⽅的⼯具栏中发现快捷图标
  7. (可选)在“系统跟踪”(System Tracing)菜单中打开“长期跟踪”( Long traces )可启⽤持续保存到设备存储空间的跟踪记
    录。如果选择此选项,您必须设置“最⼤长期跟踪记录⼤⼩”(Maximum long trace size)和“最⼤长期跟踪记录时长”( Maximum
    long trace duration)上限
  8. 启⽤“录制跟踪记录”(Record trace)开关,⼿机屏幕上⽅的快捷图标会变为启⽤状态,并且系统会显⽰常驻通知,通知您系统
    正在录制跟踪记录
  9. 停⽤“录制跟踪记录”(Record trace)开关来停⽌跟踪;⽣成的跟踪⽂件保存在开发设备的“/data/local/traces”⽬录下,带
    有“.perfetto-trace”后缀

第⼆种⽅法:在ADB⼯具中通过命令抓取“.perfetto-trace”⽂件(挺⿇烦的)

通过 ADB 连接到开发设备,并在ADB命令⾏⼯具中执⾏“adb shell perfetto –help”命令,便可以查看其参数的使⽤;
如何解析“.perfetto-trace”⽂件?
将⽣成的⽂件pull出来,⽤界⾯⼯具打开,即可分析相关的性能问题;

Perfetto系统跟踪⼯具的使⽤⽅法 - 简化

上面文字太多了,我复制别人的, 写的太好,我们简化一下吧。

第一步:开启系统跟踪

  • 打开设置,然后打开”开发者选项“
  • 找到 ”系统跟踪“
    • 勾选,跟踪可调试的应用
    • 勾选最下面,”显示快捷设置“图块
      在这里插入图片描述

第二步:录制trace文件

  • 点击录制跟踪记录
  • 操作一下,你要录制的应用界面
  • 结束录制
  • 分享录制的文件
    在这里插入图片描述

Perfetto 文件分析

  • 分析网址:
    主地址:https://perfetto.dev/
    直接地址: https://ui.perfetto.dev/

  • 文件导出
    录制完成,直接发送微信,或者其他软件即可

  • 打开网址,点击 open trace file,打开文件

  • 网址内容分析

    • 根据包名,找到项目,然后分析耗时即可。
    • 其他操作:
      • w:放大
      • d:缩小
      • a:左移
      • d:右移
      • m:标记当前函数时间

参考文献:

Android性能调试:系统跟踪应用—Perfetto

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值