跟踪的trace文件,需要用什么工具回放
答案:2 悬赏:0 手机版
解决时间 2021-01-29 02:27
- 提问者网友:疯孩纸
- 2021-01-28 13:06
跟踪的trace文件,需要用什么工具回放
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-01-28 14:32
我不会~~~但还是要微笑~~~:)
全部回答
- 1楼网友:七十二街
- 2021-01-28 14:58
Traceview的使用步骤
分为以下三步:
1. 选择追踪范围加入记录代码
2.利用tools下的工具trace view打开.trace文件
3.分析trace文件
1. 选择追踪范围加入记录代码
首先,必须在程序当中加入代码,以便生成trace文件,有了这个trace文件才可以将其转化为图形。
要添加的代码如下:
1 Debug.startMethodTracing(“wirelessqa”); //开始
2 Debug.stopMethodTracing(); //结束
其中参数wirelessqa是要创建的trace文件的名称,wirelessqa.trace。默认路径是/sdcard/wirelessqa.trace,也可以自己制定/data/log/wirelessqa,表示文件在/data/log/wirelessqa.trace。
实例代码参考:
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文件
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯