1.使用方法(代码精确分析)
Debug.startMethodTracing("ormLite"); queryAll(null); queryColumn(null); Debug.stopMethodTracing();2.运行会在sd卡根目录生成ormLite.trace文件,pull出来
3.打开android device monitor file->open File打开刚生成的trace文件
首先打开incl cpu time 为100%的行,点击最外层0(topLevel) 这里面是消耗时间方法的预览
发现 queryAll(null);占74% queryColumn(null);占16.7% 其它占比9.3%
底下为运行到的所有方法及其运行时间;因为子父方法混合在一起展示,父运行时间等于所有子方法运行时间之和。
parents:调用这个方法的方法 children:它调用到的子方法,里面方法时间相加为这个方法消耗的时间,经测验过都是主线程消耗的时间。与直接打开筛选mainThread时间一致
ddms打开的 图1 Incl Real Time为真是运行的时间,与在代码中打log的时间想一致, androidStudio直接打开的
androidStudio打开 图2 同一个方法里面,视图在同一行上,且以代码先后顺序,从左往右排列,时间短的可以放大看到
因为加入了traceView之后影响性能,所以traceview只能作为参考,给出可疑点,实际以去掉之后打日志计算的时间为主
直接用androidStudio打开的只是简化版的
正确使用Android性能分析工具——TraceView
Android性能调优工具TraceView介绍