Android启动时间分析一

      Android studio profiler CPU Profiler在与应用交互时实时检查应用的CPU 使用率和线程活动,
也可以检查记录的方法跟踪数据、函数跟踪数据和系统跟踪数据的详细信息。使用profiler跟踪进程活动时,需要对设备进行root操作。

   准备trace文件:

Application  中的oncre方法中 添加 Debug.startMethodTracing("mingcheng")

 @Override
    public void onCreate() {
        super.onCreate();
        Debug.startMethodTracing("mingcheng");
    }

主Activity  中重写 onWindowFocusChanged()插入  Debug.stopMethodTracing();

  @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus){
            Debug.stopMethodTracing();
        }
    }

启动app后 将trace文件pull 到电脑(trace文件会默认保存到sdcard/Android/data/包名/files下)

adb pull /sdcard/Android/data/包名/files D:\\others

 

       trace文件导入到 profiler中

 主要分析绿色代码,绿色代码为自己写的。

分析:

•Call chart其中详细显示了各种类型方法的调用栈,以及耗时信息,系统API 的调用为橙色,应用自有方法的调用为绿色,对第三方API(包括Java 语言API)的调用为蓝色,从左到右依次为函数调用顺序和堆栈。
•Flame Chart将具有相同调用方顺序的完全相同的方法或函数收集起来,并在火焰图中将它们表示为一个较长的横条
•Top Down/Bottom Up树形结构描述调用顺序及耗时
•Wall clock time壁钟时间表示实际经过的时间。
•Thread time线程时间= 实际经过的时间- 线程未消耗CPU 资源的时间,线程时间可以更好地了解到线程的实际CPU 使用率中有多少是给定函数消耗的

 

  

    

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值