【13】Python2.7.x Systrace的使用与环境搭建 for window

环境搭建

systrace.py

Android SDK Platform-Tools早期版本当中,提供了systrace.py脚本工具,但在最新版本已由 Studio 性能分析器、gpuinspector.dev 或 Perfetto 取代。

官网地址
SDK平台工具版本说明

//这是官网给出的修订版本
33.0.1(2022 年 3 月)
adb
修复了 Windows mdns 崩溃问题。
修复了旧设备上的 enabled-verity/disable-verity 问题。
修复了旧设备上的“安装多个”问题
改进了帮助输出内容,以包含所有受支持的压缩方法。
systrace
已移除。请改用 Studio 性能分析器/gpuinspector.dev/Perfetto。

所以我们需要下载这之前的版本

  1. Android SDK 管理器可以帮助您下载 SDK 工具、平台和开发应用所需的其他组件。下载后,您可以在标示为 Android SDK Location 的目录中找到各软件包。在这里插入图片描述
  2. 网上的历史版本下载,这里本人提供一个可用的版本,可在文章顶部下载。
python2.7.x

python需下载2.7.9 ~ 2.7.18版本才行
因为platform-tools提供的systrace脚本工具要求的python环境是python2。
其次 pip仅在2.7.9之后才集成在安装包,pip是作为python很重要的模块工具。
这里也给出了python官网的地址,可以到历史版本中去找到对应版本下载。
Python官网

如果上述两个环境都搭建好了,可以测试一下环境的完整性。

  1. 通过win+r启动运行,输入cmd启动命令提示符
  2. 输入python --version 查看python版本,如果提示不能使用python命名,看看系统环境变量是否配置
  3. 接着输入python -m pip -V查看pip的版本
  4. 命令提示符切换到platform-tools/systrace目录下
  5. 执行 python systrace.py -h 看看是否有错误提示

问题1: ImportError: No module named win32con
解决方法,可以先尝试:

python -m pip install --upgrade pip
python -m pip install pywin32 

若上述方法不行,
可以尝试下载pywin32-220.win-amd64-py2.7.exe,然后手动安装

问题2: ImportError: No module named six

python -m pip install six

如果不行,
可以尝试下载, six-1.16.0-py2.py3-none-any.whl

Systrace使用

先附上一张图片

python systrace.py [options] [categories]

在这里插入图片描述
Systrace 命令通过携带不同参数,可以抓取应用进程不同的trace数据,然后合并生成一个html文件,使用chrome浏览器打开html文件,就可以非常方便的以图形化的形式来查看和分析trace数据。

这里提供两个示例命令

// 这里仅仅抓取10s的数据信息,并在当前目录下生成trace.html文件,抓取的trace数据事件范围为 gfx wm
python systrace.py -o trace.html -t 10 gfx wm

Starting tracing (10 seconds)
Tracing completed. Collecting output...
Outputting Systrace results...
Tracing complete, writing results

Wrote trace HTML file: file:\Desktop\platform-tools\systrace\trace.html
// 这里没有限制抓取时间,当用户按下enter键就会停止抓取,抓取的数据范围也特别多,这里就不赘述了
python systrace.py -o trace.html gfx view wm am dalvik input sched freq idle

Starting tracing (stop with enter)
Tracing completed. Collecting output...
Outputting Systrace results...
Tracing complete, writing results

Wrote trace HTML file: file:\Desktop\platform-tools\systrace\trace.html

可以用过‘-l’选项来查看目标机支持的systrace事件全集

$ ./systrace -l
         gfx - Graphics
       input - Input
        view - View System
     webview - WebView
          wm - Window Manager
          am - Activity Manager
          sm - Sync Manager
       audio - Audio
       video - Video
      camera - Camera
         hal - Hardware Modules
         app - Application
         res - Resource Loading
      dalvik - Dalvik VM
          rs - RenderScript
      bionic - Bionic C Library
       power - Power Management
          pm - Package Manager
          ss - System Server
    database - Database
     network - Network
         adb - ADB
         pdx - PDX services
       sched - CPU Scheduling
         irq - IRQ Events
        freq - CPU Frequency
        idle - CPU Idle
        disk - Disk I/O
       workq - Kernel Workqueues
  memreclaim - Kernel Memory Reclaim
  regulators - Voltage and Current Regulators
  binder_driver - Binder Kernel driver
  binder_lock - Binder global lock trace
   pagecache - Page cache

NOTE: more categories may be available with adb root
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值