An open API service indexing awesome lists of open source software.

https://github.com/panhongwei/TraceReader

android小工具,通过读取trace文件,回溯整个整个程序执行调用树。
https://github.com/panhongwei/TraceReader

android ddms profiling trace

Last synced: 26 days ago
JSON representation

android小工具,通过读取trace文件,回溯整个整个程序执行调用树。

Awesome Lists containing this project

README

        

# TraceReader
## 1.简述
Android 调试工具ddms的devices栏目存在一个功能叫做start method profiling,此按钮顾名思义是启动method profiling的,而Android的Method Profiling功能,是可以在一段时间内记录所有运行过的函数,最后生成一个xxx.trace文件。xxx.trace文件比较有趣,如果分析andorid源码可以知道,xxx.trace文件按线程和时间记录了method的enter和exit事件。也就是说,如果我们能够读取xxx.trace文件,那么我们就能够获取到某段时间,某个app运行过的java函数。

## 2.功能
 于是乎,便有个这个工具,目前更新到TraceReader v1.1,实现了如下功能:

1)支持拖拽解析xx.trace。

![image](http://123.207.98.15:8080/image/9.png)

2)支持显示线程。

![image](http://123.207.98.15:8080/image/10.png)

3)支持树形显示方法调用

![image](http://123.207.98.15:8080/image/13.png)

4)支持按列显示运行方法

![image](http://123.207.98.15:8080/image/22.png)

5)支持搜索

![image](http://123.207.98.15:8080/image/10.png)

6)支持复制、重命名

![image](http://123.207.98.15:8080/image/16.png)

![image](http://123.207.98.15:8080/image/17.png)

7)支持显示调用时间

![image](http://123.207.98.15:8080/image/18.png)

![image](http://123.207.98.15:8080/image/19.png)

## 3.用法
 解析trace文件,用法如下:
```Java
byte[] bytes=BytesHelper.toByteArray(fl.getPath());
Trace trace=new Trace(bytes);
trace.getThreadList();
```
## 3.原理
TODO….