代码打点统计应用耗时

本文介绍了在移动应用开发中监测流程耗时的两种方法:adb shell am命令和代码打点。adb shell am方式可用于获取应用的真实启动时间,包括创建进程、Application初始化和Activity显示的时间。而代码打点则能精确测量每个方法的执行时间,特别是在Application的生命周期节点和关键初始化方法中应用。
摘要由CSDN通过智能技术生成

在移动应用开发中,我们有时需要监测一些流程的耗时,比如应用启动耗时,页面跳转耗时等,仅仅凭借肉眼来观察很不准确,我们可以通过几种方式来实现,一种方法是通过shell来获取启动耗时,一种是通过代码打点输出耗时,还有一种通过插桩,这里简单介绍下前两种。

一、adb shell am方式

使adb shell获取应用真实启动时间代码如下:

adb shell am start -W [packageName]/[packageName.SplashActivity]

执行后会得到三个时间:ThisTime、TotalTime和WaitTime,其中TotalTime表示应用的启动时间,包括创建进程+Application初始化+Activity初始化到界面显示

二、代码打点

通过代码打点可以准确获取每个方法的执行时间,相关代码如下:

/**
 * 耗时监视器对象,记录整个过程的耗时情况,可以用在很多需要统计的地方,比如Activity的启动耗时和Fragment的启动耗时。
 */
public class TimeMonitor {
    private final String TAG = TimeMonitor.class.getSimpleName();
    private int mMonitorId = -1;
    private HashMap<String, Long> mTimeTag = new HashMap<>();
    private long mStartTime = 0;

    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值