Android计算App启动时间

Android平台上,一个App的启动时间可以说是一个重要的性能指标。

应用第一次启动也就是我们常说的冷启动,这时候你的应程序的进程是没有创建的. 这也是大部分应用的使用场景.用户在桌面上点击你应用的 icon 之后,首先要创建进程,然后才启动 MainActivity.
这时候adb shell am start -w packagename/MainActivity 返回的结果,就是标准的应用程序的启动时间(注意 Android 5.0 之前的手机是没有 WaitTime 这个值的
如何测试App的启动时间呢?

首先确保adb 环境变量的正确配置。简单说明,就是新建一个系统变量Android_ADB(也可以在PATH后添加)tool和platform-tools的完整路径: ;C:\Users\deng.jun\AppData\Local\Android\sdk\tools;C:\Users\deng.jun\AppData\Local\Android\sdk\platform-tools

        打开cmd,切换到SDK的adb目录,我的是:cd C:\Users\deng.jun\AppData\Local\Android\sdk\platform-tools 然后输入命令:

      adb shell am start -W -n dj.djapp/view.LoginActivity 

      解释:am是shell中集成的一个命令,ActivityManager的简写。一共需要提供两个参数-W,-n,其中-W是指启动完成之后,返回启动耗时,是最关键的一个参数。-n后面跟的是需要启动的App的包名和launchActivity。

      结果如下:

      

    ps:

    WaitTime 就是总的耗时,包括前一个应用 Activity pause 的时间和新应用启动的时间;
    ThisTime 表示一连串启动 Activity 的最后一个 Activity 的启动耗时;
    TotalTime 表示新应用启动的耗时,包括新进程的启动和 Activity 的启动,但不包括前
    一个应用 Activity pause 的耗时。也就是说,开发者一般只要关心 TotalTime 即可,这个时间才是自己应用真正启动的耗时。

参考:

    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0105/3830.html

    http://blog.csdn.net/mrleeapple/article/details/49818557

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值