一、 选择跟踪范围

在想要根据的代码片段之间使用以下两句代码

  1. Debug.startMethodTracing("love_world_");
  2. Debug.stopMethodTracing();

例如,onCreate与onStart方法之间方法跟踪

  1. public class MainActivity extends Activity {
  2. @Override
  3. protected void onCreate(Bundle savedInstanceState) {
  4. super.onCreate(savedInstanceState);
  5. setContentView(R.layout.activity_main);
  6. Debug.startMethodTracing("Love_World_");
  7. }
  8. @Override
  9. protected void onStart() {
  10. super.onStart();
  11. Debug.stopMethodTracing();
  12. }
  13. }

二、添加SD卡访问权限

  1. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  2. <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

如果不添加,执行项目会出现以下异常

  1. java.lang.RuntimeException:Unable to open trace file '/mnt/sdcard/Love_World_.trace': Permission denied

三 、 导出traceview文件

1  首先执行项目,查看trace文件是否生成
进入shell模式

  1. adb shell

查看是否已经生成这个文件

  1. ls sdcard/Love_World_.trace

Ctrl + C 退出adb shell模式

2 导出trace文件

  1. adb pull sdcard/Love_World_.trace

四、 打开trace文件

打开trace文件需要Android提供的traceview.bat工具,工具所在目录:sdk\tools\traceview.bat, 有两种方式执行:
1) 在命令行中切换到此目录
2) 将此目录添加到系统环境变量中

  1. //  cmd在calc.trace所在目录执行
  2. traceview C:\Users\YourName\Desktop\Love_World_.trace

其中“C:\Users\YourName\Desktop\” 表示trace所在你系统中的目录,此工具需要输入trace文件的绝对路径才行

五、 TraceView工具用途

有两方面用途:

1  查看跟踪代码的执行时间,分析哪些是耗时操作

2  可以用于跟踪方法的调用,尤其是Android Framework层的方法调用关系

获取方法的调用顺序

1. 在traceview中搜索响应的方法名不能使用大写字母

2. 搜索出的方法会自动展开,其中包含Parents 和 Children 两组信息

3. 点击Parents下的方法名,直接跳转到调用当前的方法处。Children相反

六、异常处理
1 异常处理

  1. 'C:\Windows\system32\java.exe' 不是内部或外部命令,也不是可运行的程序
  2. 或批处理文件。
  3. SWT folder '' does not exist.
  4. Please set ANDROID_SWT to point to the folder containing swt.jar for your platfo
  5. rm.

配置Java环境变量,把java bin 添加到系统环境变量PATH中

2 异常信息

  1. The standalone version of traceview is deprecated.
  2. Please use Android Device Monitor (tools/monitor) instead.
  3. Failed to read the trace filejava.io.IOException: Key section does not have an *
  4. end marker
  5. at com.android.traceview.DmTraceReader.parseKeys(DmTraceReader.java:420)
  6. at com.android.traceview.DmTraceReader.generateTrees(DmTraceReader.java:
  7. 91)
  8. at com.android.traceview.DmTraceReader.<init>(DmTraceReader.java:87)
  9. at com.android.traceview.MainWindow.main(MainWindow.java:286)

通常是trace文件有异常,再重新生成并导出试试

七、 相关资料:

Android代码调试工具 traceview 和 dmtracedump的波折演绎

转载于:https://www.cnblogs.com/webapplee/p/3774056.html

[Android]Android TraceView工具使用相关推荐

  1. 正确使用 Android 性能分析工具——TraceView

    前面唠叨 最近公司app中有些列表在滑动的时候会有卡顿现象,我就开始着手解决这些问题,解决问题之前首先要分析列表滑动的性能瓶颈在什么地方.因为之前不会正确使用TraceView这个工具,主要是看不懂T ...

  2. Android 性能优化工具 TraceView 简单使用

    背景 最近产品以及测试大佬反应快搜桌面进入搜索页面跳转较为缓慢,影响体验,为了优化这个问题,特地学习Android 性能优化工具 TraceView的 简单使用,这才有了本文. 正文 如下图打开and ...

  3. 正确使用Android性能分析工具——TraceView

    原址 前面唠叨 最近公司app中有些列表在滑动的时候会有卡顿现象,我就开始着手解决这些问题,解决问题之前首先要分析列表滑动的性能瓶颈在什么地方.因为之前不会正确使用TraceView这个工具,主要是看 ...

  4. Android 性能优化工具

    Android 性能优化工具 这段时间总结了一些常用的性能优化工具,当然这些并没有包含全部的工具,下面稍微对这些工具做个简单的总结: 1.应用codeReview工具 StrictMode 检测应用主 ...

  5. Android辅助开发工具说明

    1.aapt(Android Asset Packaging Tool):用于建立zip包(zip.jar.apk),也可用于将资源编译到二进制的assets: 2.adb(Android Debug ...

  6. Android 手机自动化测试工具有哪几种?

    Android 手机自动化测试工具有哪几种? 3 条评论 分享 按投票排序按时间排序 28 个回答 78赞同 反对,不会显示你的姓名 知乎用户,https://github.com/truebit 孙 ...

  7. Android开发常用工具,编译调试工具,性能优化工具,工具集

    分析具体耗时的Trace view;布局复杂度工具Hierarchy View;应用启动时间;Memory.CPU.Network分析;静态代码检查工具Lint;程序稳定性monkey.adb调试桥. ...

  8. Android 性能分析工具整理汇总

    Android性能分析工具整理汇总 字数1852 阅读3579 评论10 喜欢54 Android性能分析工具整理汇总 把做Android开发以来碰到的一些不错的性能分析工具做个整理汇总... Deb ...

  9. Android Studio TraceView性能优化分析

    http://blog.csdn.net/androiddevelop/article/details/8223805 http://www.cnblogs.com/sunzn/p/3192231.h ...

  10. flutter图标按钮_Flutter开发第一个项目android studio 开发工具的使用说明

    Flutter开发第一个项目android studio 开发工具的使用说明 做个自我介绍 自我介绍还是有必要介绍一下的,毕竟这是网络里,你看不到我,我看不到你,只能通过文字来传递信息,本人做技术8年 ...

最新文章

  1. vue build text html,Vue中v-text / v-HTML使用实例代码详解_放手_前端开发者
  2. 其他数据类型的一些操作
  3. linux虚拟实验室关闭了,centos8禁用selinux临时关闭/永久关闭
  4. 博客的起死复生+慎改wdpc端口
  5. [2021-06-19] 提高组新手副本Ⅱ(联网,欧几里得,分解树,开关灯)
  6. C程序设计语言现代方法04:表达式
  7. 报表选型除了看开发难易,还要看运维省不省心
  8. javaweb day14
  9. AM调制解调matlab实验报告,MATLAB仿真AM调制解调 无线通信实验报告.doc
  10. 密码键盘介绍二:主密钥和工作密钥的导入
  11. LUP分解求解线性方程组及求逆矩阵 java
  12. SpringBoot数据库连接池常用配置(mysql+sqlServer)
  13. LRC 文件格式定义
  14. (纪中)2431. 移动奶牛(herding)
  15. 俄勒冈大学计算机科学专业,俄勒冈大学计算机与信息科学详解 热门专业不容错过...
  16. Oralce查询当年的数据
  17. 文档编辑器与远端文件存储(Summernote)
  18. 利用Java定时发送暖心短信给你的对象(最详细)
  19. Wamp错误: Forbidden You don't have permission to access / on this server.
  20. 2010.06.27 可可网络验证系统

热门文章

  1. 【POJ3335】Rotating Scoreboard(多边形的内核-----半平面交+特殊情况)
  2. 呆瓜半小时入门python数据分析
  3. linux 解压加密zip,linux 系统下 zip 的加密压缩与解压缩命令
  4. java启动脚本_java启动脚本
  5. TensorFlow by Google #10使用 NLP 构建讽刺分类器 Using NLP to build a sarcasm classifier
  6. 算法:匹配有效的括号20. Valid Parentheses
  7. 引导页onboarding页面Snapkit实现
  8. ORB feature to FAST,定向快速旋转简报
  9. Evolved Transformer
  10. 295.数据流的中位数