首页 > 解决方案 > 如何跟踪我的应用程序的 ActivityManager 加载时间?

问题描述

我想跟踪我的应用启动需要多长时间,但我想跟踪这里定义的这个特定信息:https ://developer.android.com/topic/performance/vitals/launch-time 为了有更好的关于它的图形并向其添加自定义信息。我试过什么?

我试图在onCreate方法之间添加一个计时器,onResume但获得的时间是系统“活动管理器:显示”跟踪的时间的一半

我该怎么做才能以编程方式获得这些值?

在此处输入图像描述

标签: androidperformanceandroid-lifecycleandroid-activitymanager

解决方案


您应该计算Application.onCreate()到结束之间的时间Activity.onCreate()以获得冷启动时间。请阅读此处了解更多信息。

让我解释。在您的应用程序类中:

class YourApplication: Application() {

public static long starttime = 0;

@Override
    public void onCreate() {
    starttime = SystemClock.elapsedRealtime();
}
}

在您的启动器活动类中,完成 onCreate 方法后:

class MainActivity : Activity() {

       @Override
       public void onCreate() {
       long timeelapsed = (SystemClock.elapsedRealtime() - YourApplication.starttime);
     Log.i("TEST", "your time : "+ timeelapsed)
    }

}

推荐阅读