From 9ca11fe33c6f8b2e3d7e03682897c31ba806e6dc Mon Sep 17 00:00:00 2001 From: Louis Chang Date: Sat, 20 Feb 2021 15:01:46 +0800 Subject: [PATCH] Log activity relaunch In order to better analysis the reasoning of activity restart locally. Bug: 180387769 Test: presubmit Change-Id: I624cbd02e6b6759e686f173ed0dc9b47195456e1 --- core/java/android/app/ActivityThread.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 3d9f6123963f6..47d2e7cee65ab 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -5141,7 +5141,7 @@ public final class ActivityThread extends ClientTransactionHandler { private void onCoreSettingsChange() { if (updateDebugViewAttributeState()) { // request all activities to relaunch for the changes to take place - relaunchAllActivities(false /* preserveWindows */); + relaunchAllActivities(false /* preserveWindows */, "onCoreSettingsChange"); } } @@ -5160,7 +5160,8 @@ public final class ActivityThread extends ClientTransactionHandler { return previousState != View.sDebugViewAttributes; } - private void relaunchAllActivities(boolean preserveWindows) { + private void relaunchAllActivities(boolean preserveWindows, String reason) { + Log.i(TAG, "Relaunch all activities: " + reason); for (int i = mActivities.size() - 1; i >= 0; i--) { scheduleRelaunchActivityIfPossible(mActivities.valueAt(i), preserveWindows); } @@ -5535,6 +5536,7 @@ public final class ActivityThread extends ClientTransactionHandler { void scheduleRelaunchActivity(IBinder token) { final ActivityClientRecord r = mActivities.get(token); if (r != null) { + Log.i(TAG, "Schedule relaunch activity: " + r.activityInfo.name); scheduleRelaunchActivityIfPossible(r, !r.stopped /* preserveWindow */); } } @@ -6079,7 +6081,7 @@ public final class ActivityThread extends ClientTransactionHandler { handleConfigurationChanged(newConfig, null); // Preserve windows to avoid black flickers when overlays change. - relaunchAllActivities(true /* preserveWindows */); + relaunchAllActivities(true /* preserveWindows */, "handleApplicationInfoChanged"); } static void freeTextLayoutCachesIfNeeded(int configDiff) {