热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

抓systrace的常用的四种方法

Systrace是分析性能问题的最基本的工具,那么如何抓取systrace呢?手机准备好你要进行抓取的界面点击开始抓取(命令行的话就是开

Systrace是分析性能问题的最基本的工具,那么如何抓取systrace呢?


  1. 手机准备好你要进行抓取的界面 点击开始抓取(命令行的话就是开始执行命令)
  2. 手机上开始操作 设定好的时间到了之后,会将生成 Trace 文件,
  3. 使用 Chrome 将这个文件打开进行分析

下面介绍了四种使用工具抓取 Systrace 的方法:

 


一、使用Eclipse/Android Studio/Device Monitor抓取


  1. In Eclipse, open an Android application project.
  2. Switch to the DDMS perspective, by selecting Window > Perspectives > DDMS.
  3. In the Devices tab, select the device on which to run a trace. If no devices are listed, make sure your device is connected via USB cable and that debugging is enabled on the device.
  4. Click the Systrace icon at the top of the Devices panel to configure tracing.
  5. Set the tracing options and click OK to start the trace

 


  1. In Android Studio, open an Android application project.
  2. Open the Device Monitor by selecting Tools > Android > Monitor.
  3. In the Devices tab, select the device on which to run a trace. If no devices are listed, make sure your device is connected via USB cable and that debugging is enabled on the device.
  4. Click the Systrace icon at the top of the Devices panel to configure tracing.
  5. Set the tracing options and click OK to start the trace.

 


  1. Navigate to your SDK tools/ directory.
  2. Run the monitor program.
  3. In the Devices tab, select the device on which to run a trace. If no devices are listed, make sure your device is connected via USB cable and that debugging is enabled on the device.
  4. Click the Systrace icon at the top of the Devices panel to configure tracing.
  5. Set the tracing options and click OK to start the trace.

具体步骤见截图:

 


二、 使用命令行工具

命令行形式比较灵活,速度也比较快,一次性配置好之后,以后再使用的时候就会很快就出结果.


  1. cd android-sdk/platform-tools/systrace
  2. python systrace.py --time=5  -o  mysystrace.html   sched freq gfx input view  webview wm am dalvik idle power

参数解释:

a.--time后面是你要抓的时间的长度,--time=5表示抓的时间长为5s.

b.mysystrace.html是要生成的systrace文件的名称

c. sched以及后面的参数表示,你要抓的systrace信息,这个不同手机可能有不同,你可以通过一下命令查看你手机支持的systrace Tag.

adb shell atrace --list

 


三、perfdump(这个是高通平台支持的一个工具)


  1. am start -n com.qualcomm.qti.perfdump/.MainActivity :打开这个工具
  2. systrace.py --from-file trace_output -o output.htm:把生成的文件转换成systrace文件

用命令1打开工具后可以看到图一(从左到右数),在图一选择你要抓的信息,然后保存,在图二中选择开始,当你发现卡顿就可以点击下载的那个图标,就可以保存之前抓的systrace文件到你手机里面

           

 


四、抓离线systrace(高通平台)

1.使用手机连接上wifi

2.确保手机和PC网络可以互通(可以ping相互的ip地址)

3.确保手机usb调试打开,使用usb连接手机,然后执行命令:adb tcpip 5555

4.断开usb连接

5.输入命令:adb connect 手机ip地址(如 adb connect 192.168.1.111)

6.通过方法一到三中的一种方法来抓

 


推荐阅读
  • 本文出处:炎之铠csdn博客:http:blog.csdn.nettotond炎之铠邮箱:yanzhikai_yjk@qq.com本文原创,转载请注明本出处!前言 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • Android工程师面试准备及设计模式使用场景
    本文介绍了Android工程师面试准备的经验,包括面试流程和重点准备内容。同时,还介绍了建造者模式的使用场景,以及在Android开发中的具体应用。 ... [详细]
  • Android 自定义 RecycleView 左滑上下分层示例代码
    为了满足项目需求,需要在多个场景中实现左滑删除功能,并且后续可能在列表项中增加其他功能。虽然网络上有很多左滑删除的示例,但大多数封装不够完善。因此,我们尝试自己封装一个更加灵活和通用的解决方案。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 本文介绍了在 Java 编程中遇到的一个常见错误:对象无法转换为 long 类型,并提供了详细的解决方案。 ... [详细]
  • 实验九:使用SharedPreferences存储简单数据
    本实验旨在帮助学生理解和掌握使用SharedPreferences存储和读取简单数据的方法,包括程序参数和用户选项。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 如何解决WebView重定向行为导致多次加载的问题
    这篇文章主要介绍如何解决WebView重定向行为导致多次加载的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!使用WebV ... [详细]
  • 我收到这个错误.我怎么能在我的情况下解决这个问题?Bitmapcannotberesolvedtoatype发生错误的行publicvoidonPageStart ... [详细]
  • LDAP服务器配置与管理
    本文介绍如何通过安装和配置SSSD服务来统一管理用户账户信息,并实现其他系统的登录调用。通过图形化交互界面配置LDAP服务器,确保用户账户信息的集中管理和安全访问。 ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • 本题主要考察二维数组的遍历和重塑。通过将二维数组降为一维,再根据新的行数和列数重新构建矩阵。 ... [详细]
  • 深入解析 Lifecycle 的实现原理
    本文将详细介绍 Android Jetpack 中 Lifecycle 组件的实现原理,帮助开发者更好地理解和使用 Lifecycle,避免常见的内存泄漏问题。 ... [详细]
  • Android上的Markdown显示Segmentfault在Android客户端上的问题回答页面是怎么做的? ... [详细]
author-avatar
手机用户2502895085
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有