【Android测试工具】01. Android TraceView工具使用详解
2015-10-28 08:59
701 查看
转载地址:http://blog.csdn.net/wirelessqa/article/details/8764622
Traceview是android平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。
1. 查看跟踪代码的执行时间,分析哪些是耗时操作
2. 可以用于跟踪方法的调用,尤其是Android Framework层的方法调用关系
分为以下三步:
1. 选择追踪范围加入记录代码
2.利用tools下的工具trace view打开.trace文件
3.分析trace文件
首先,必须在程序当中加入代码,以便生成trace文件,有了这个trace文件才可以将其转化为图形。
要添加的代码如下:
其中参数wirelessqa是要创建的trace文件的名称,wirelessqa.trace。默认路径是/sdcard/wirelessqa.trace,也可以自己制定/data/log/wirelessqa,表示文件在/data/log/wirelessqa.trace。
实例代码参考:
说明:
开发文档中说可以在activity的onCreate()中添加Debug.startMethodTracing(), 而在onDestroy()中添加Debug.stopMethodTracing(),但是在实际的测试时发现这种方式其实并不好用,因为通常情况下我们的activity的onDestroy()是由系统决定何时调用的,因此可能等了很长时间都不会得到这个trace文件。
因此决定在onStop()中来调用Debug.stopMethodTracing()。这样当我们切换到其它activity或者点击home键的时候onStop()就会被调用,我们也就可以得到完整的trace file。
别忘了加入访问SD卡的权限
![](http://img.blog.csdn.net/20130811154403218)
TraceView是什么
Traceview是android平台配备一个很好的性能分析的工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。
Traceview的作用
1. 查看跟踪代码的执行时间,分析哪些是耗时操作2. 可以用于跟踪方法的调用,尤其是Android Framework层的方法调用关系
Traceview的使用步骤
分为以下三步:1. 选择追踪范围加入记录代码
2.利用tools下的工具trace view打开.trace文件
3.分析trace文件
1. 选择追踪范围加入记录代码
首先,必须在程序当中加入代码,以便生成trace文件,有了这个trace文件才可以将其转化为图形。要添加的代码如下:
1 | Debug.startMethodTracing(“wirelessqa”); //开始 |
2 | Debug.stopMethodTracing(); //结束 |
实例代码参考:
01 | publicclass MainActivity extends Activity { |
02 |
03 | @Override |
04 | protectedvoid onCreate(Bundle savedInstanceState) { |
05 | super .onCreate(savedInstanceState); |
06 | setContentView(R.layout.activity_main); |
07 | setTitle( this .getClass().getName()); |
08 | View toLoginView = findViewById(R.id.to_login); |
09 | // 开始记录 sdcard/wirelessqa.trace文件 |
10 | Debug.startMethodTracing( "wirelessqa" ); |
11 | toLoginView.setOnClickListener( new View.OnClickListener() { |
12 |
13 | publicvoid onClick(View view) { |
14 | Intent intent = new Intent(getApplicationContext(), LoginActivity. class ); |
15 | startActivity(intent); |
16 | } |
17 | }); |
18 | } |
19 |
20 | @Override |
21 | protectedvoid onStop() { |
22 | super .onStop(); |
23 | Debug.stopMethodTracing(); // 结束记录wirelessqa.trace |
24 | } |
25 | } |
开发文档中说可以在activity的onCreate()中添加Debug.startMethodTracing(), 而在onDestroy()中添加Debug.stopMethodTracing(),但是在实际的测试时发现这种方式其实并不好用,因为通常情况下我们的activity的onDestroy()是由系统决定何时调用的,因此可能等了很长时间都不会得到这个trace文件。
因此决定在onStop()中来调用Debug.stopMethodTracing()。这样当我们切换到其它activity或者点击home键的时候onStop()就会被调用,我们也就可以得到完整的trace file。
别忘了加入访问SD卡的权限
1 | <uses-permissionandroid:name= "android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> |
2 | <uses-permissionandroid:name= "android.permission.WRITE_EXTERNAL_STORAGE" /> |
2.利用tools下的工具trace view打开.trace文件
3. 分析trace文件
相关文章推荐
- 【Android自动化测试之Robotium】03. 当只有一个APK的时候使用robotium进行自动化测试
- android中xliff的使用
- Android RecyclerView之代替ListView与GridView
- Android 应用热修复工具 AndFix
- Android API Level与sdk版本对照表
- android studio 配置百度地图SDK 的一些常见问题
- Glide-Android下高效加载多媒体文件
- Android Mms短信的发送流程,短信发送源码解析
- 写android界面的感悟
- Android HorizontalScrollView 实现3D Gallery
- Android笔记(四十三) Android中的数据存储——SQLite(五)delete
- Android自定义控件之大图轮播
- 电话联系人的读取
- Android使用zxing(二维码工具类)类库的导入方式
- Android使用zxing(二维码工具类)类库的导入方式
- Android笔记(四十二) Android中的数据存储——SQLite(四)update
- Android Animation各种动画详解
- android自定义view实现字体变色
- Android tv 动画效果faq (放大动画 与ScrollView滚动照成 页面漂移交错)
- android 63 Fragment