Android | Logcat 未显示应用启动时间

Android | Logcat is not displaying app startup time

我一直在尝试测量应用程序启动时间并偶然发现 App startup time。这里提到使用logcat不带过滤器我们可以看到日志ActivityManager: Displayed com.android.myexample/.StartupTiming: +3s534ms (total +1m22s643ms)。它显示了启动进程并在对应于应用程序的显示中完成绘图所花费的时间。

但是,就我而言,它没有显示。

这里是logcat的截图。

通过 adb shell am start -S -W com.example.app/.MainActivity

通过 cmd adb 启动时

显示 TotalTime: 554 WaitTime: 558

那么 TotalTime 和 WaitTime 是什么?

您想要的指标是 TotalTime,以下是 this blogpost 对两者的解释,其中深入探讨了不同场景下测量过程的完整细分:

  • WaitTime为总耗时,包括上一个应用Activity暂停的时间和新应用启动的时间;
  • TotalTime表示新应用启动的时间,包括启动新进程和启动activity。

您可能还想直接从 Android Developers documentation 阅读有关测量过程的更多信息。要测量初始显示时间,您应该使用的命令如下:

adb [-d|-e|-s <serialNumber>] shell am start -S -W com.android.myexample/.StartupTiming -c android.intent.category.LAUNCHER -a android.intent.action.MAIN

这将为您提供一个示例指标,显示为:

Starting: Intent Activity: com.android.myexample/.StartupTiming ThisTime: 2044 TotalTime: 2044 WaitTime: 2054 Complete