android - 如何跟踪我的应用程序的 ActivityManager 加载时间?
问题描述
我想跟踪我的应用启动需要多长时间,但我想跟踪这里定义的这个特定信息:https ://developer.android.com/topic/performance/vitals/launch-time 为了有更好的关于它的图形并向其添加自定义信息。我试过什么?
我试图在onCreate
方法之间添加一个计时器,onResume
但获得的时间是系统“活动管理器:显示”跟踪的时间的一半
我该怎么做才能以编程方式获得这些值?
解决方案
您应该计算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)
}
}
推荐阅读
- angular - Angular 并使用“核心”路由参数(例如帐户 ID/订阅 ID)
- android - 将自定义 Android 11 内核加载到 AVD/模拟器
- c# - ConfigurationManager does not exist after upgrading newtonsoft.json
- java - 为什么 String 类没有 TYPE 字段?
- javascript - 在 lightgallery 中添加复选框和输入字段不起作用
- javascript - NuxtJs Vuex | 当我尝试使用 ...mapGetters 或 ...mapActions 时出现意外令牌
- python - Docopt/Python,如何正确测试函数
- flutter - 颤振:如何调整 CupertinoAlertDialog 的属性?
- laravel - 当我在具有授权的邮递员中发送 GET 请求时出现无效签名错误
- go - 在这个包中重新声明了“顶点”