https://www.jianshu.com/p/f83d84dcd0b8
https://blog.csdn.net/qq_32434307/article/details/90053047
Systrace
优点:相比于traceview,systrace更加直观和精准,打开生成的html可以知道在相应的时间段内,哪里的函数执行的时间最长,是否造成UI上的卡顿和丢帧,
缺点:
systrace的输出依赖代码中的trace,虽然系统中的关键函数都加上了trace,但是分析到具体的应用的时候也需要在代码上加trace,trace越多,结果输出就越详细,分析起来也更容易定位具体的耗时点,
systrace也不是每次都要用,有时候程序的卡顿可能只是一段代码函数执行的次数太多,那么就可以直接去优化响应的函数,不需要使用systrace,所以推荐先使用traceview寻找当前程序是否有重复调用或者执行时间较长的函数,其次是代码分析,寻找可疑点,如果前两步都不准确的话,这时候可以考虑使用systrace。
1.Android Studio使用systrace
对于一般的应用开发者,android studio已经把功能都集成好了,可以十分方便的使用systrace,打开Android Device Monitor就能看到如下界面
Android Device Monitor的打开方式:
https://blog.csdn.net/qq_32434307/article/details/90053047
点击红框后,操作app可以生产trace文件
之后打开生成的html文件,分析。