Add traces for activity create/resume/pause/stop/destroy
With component name, it is clearer to know which activities are executed. And the traces are closer to the implementation of app, so the relative time between app and framework can be shown by overlapping with the traces of transaction items. Bug: 175028240 Test: build Change-Id: I76faf6265f38c211ffd69a36b6e3ad882465251e
This commit is contained in:
@@ -7873,6 +7873,10 @@ public class Activity extends ContextThemeWrapper
|
||||
|
||||
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
|
||||
final void performCreate(Bundle icicle, PersistableBundle persistentState) {
|
||||
if (Trace.isTagEnabled(Trace.TRACE_TAG_WINDOW_MANAGER)) {
|
||||
Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "performCreate:"
|
||||
+ mComponent.getClassName());
|
||||
}
|
||||
dispatchActivityPreCreated(icicle);
|
||||
mCanEnterPictureInPicture = true;
|
||||
// initialize mIsInMultiWindowMode and mIsInPictureInPictureMode before onCreate
|
||||
@@ -7895,6 +7899,7 @@ public class Activity extends ContextThemeWrapper
|
||||
mFragments.dispatchActivityCreated();
|
||||
mActivityTransitionState.setEnterActivityOptions(this, getActivityOptions());
|
||||
dispatchActivityPostCreated(icicle);
|
||||
Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
|
||||
}
|
||||
|
||||
final void performNewIntent(@NonNull Intent intent) {
|
||||
@@ -8000,6 +8005,10 @@ public class Activity extends ContextThemeWrapper
|
||||
}
|
||||
|
||||
final void performResume(boolean followedByPause, String reason) {
|
||||
if (Trace.isTagEnabled(Trace.TRACE_TAG_WINDOW_MANAGER)) {
|
||||
Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "performResume:"
|
||||
+ mComponent.getClassName());
|
||||
}
|
||||
dispatchActivityPreResumed();
|
||||
performRestart(true /* start */, reason);
|
||||
|
||||
@@ -8051,9 +8060,14 @@ public class Activity extends ContextThemeWrapper
|
||||
" did not call through to super.onPostResume()");
|
||||
}
|
||||
dispatchActivityPostResumed();
|
||||
Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
|
||||
}
|
||||
|
||||
final void performPause() {
|
||||
if (Trace.isTagEnabled(Trace.TRACE_TAG_WINDOW_MANAGER)) {
|
||||
Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "performPause:"
|
||||
+ mComponent.getClassName());
|
||||
}
|
||||
dispatchActivityPrePaused();
|
||||
mDoReportFullyDrawn = false;
|
||||
mFragments.dispatchPause();
|
||||
@@ -8069,6 +8083,7 @@ public class Activity extends ContextThemeWrapper
|
||||
" did not call through to super.onPause()");
|
||||
}
|
||||
dispatchActivityPostPaused();
|
||||
Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
|
||||
}
|
||||
|
||||
final void performUserLeaving() {
|
||||
@@ -8077,6 +8092,10 @@ public class Activity extends ContextThemeWrapper
|
||||
}
|
||||
|
||||
final void performStop(boolean preserveWindow, String reason) {
|
||||
if (Trace.isTagEnabled(Trace.TRACE_TAG_WINDOW_MANAGER)) {
|
||||
Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "performStop:"
|
||||
+ mComponent.getClassName());
|
||||
}
|
||||
mDoReportFullyDrawn = false;
|
||||
mFragments.doLoaderStop(mChangingConfigurations /*retain*/);
|
||||
|
||||
@@ -8122,9 +8141,14 @@ public class Activity extends ContextThemeWrapper
|
||||
dispatchActivityPostStopped();
|
||||
}
|
||||
mResumed = false;
|
||||
Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
|
||||
}
|
||||
|
||||
final void performDestroy() {
|
||||
if (Trace.isTagEnabled(Trace.TRACE_TAG_WINDOW_MANAGER)) {
|
||||
Trace.traceBegin(Trace.TRACE_TAG_WINDOW_MANAGER, "performDestroy:"
|
||||
+ mComponent.getClassName());
|
||||
}
|
||||
dispatchActivityPreDestroyed();
|
||||
mDestroyed = true;
|
||||
mWindow.destroy();
|
||||
@@ -8137,6 +8161,7 @@ public class Activity extends ContextThemeWrapper
|
||||
mVoiceInteractor.detachActivity();
|
||||
}
|
||||
dispatchActivityPostDestroyed();
|
||||
Trace.traceEnd(Trace.TRACE_TAG_WINDOW_MANAGER);
|
||||
}
|
||||
|
||||
final void dispatchMultiWindowModeChanged(boolean isInMultiWindowMode,
|
||||
|
||||
Reference in New Issue
Block a user