Хм - во-первых, если быть более точным, я должен отметить, что в Android вы запускаете действия, а не приложения!
Итак, поскольку ваша точка входа в ваше приложение - это действие, которое обрабатывает намерение ЗАПУСКА, вы можете интерпретировать ваш вопрос как «как измерить время запуска активности».
Для этого я предлагаю посмотреть жизненный цикл деятельности здесь: https://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle.
Глядя на красивый график, вы видите, что время запуска - это, по сути, время, потраченное на onCreate()
, onStart()
и onResume()
.
Чтобы измерить это, я бы предложил использовать traceview , поскольку это действительно покажет вам во всех деталях, где вы провели свое время! Начните трассировку, используя Debug.startMethodTracing("startUp");
в начале onCreate()
и завершите трассировку в конце onResume()
с Debug.stopMethodTracing();
.
Поскольку onCreate()
вызывается только один раз за экземпляр, вам даже не нужно беспокоиться о множественных вызовах onResume()
в случае, если это действие будет перенесено в фоновый режим, так как вы дважды вызовете метод stop, что без вреда!
Получайте удовольствие - мне очень нравятся возможности traceview!