Merge "Add dumpsys command to dump visible activities." into tm-qpr-dev am: 37b6271f15

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19835944

Change-Id: Id60cdca1fdf1683ef886260fe23a9bddfbabd057
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Mariia Sandrikova
2022-09-07 21:10:36 +00:00
committed by Automerger Merge Worker
2 changed files with 25 additions and 1 deletions

View File

@@ -148,6 +148,7 @@ import static com.android.server.wm.ActivityTaskManagerService.DUMP_RECENTS_CMD;
import static com.android.server.wm.ActivityTaskManagerService.DUMP_RECENTS_SHORT_CMD;
import static com.android.server.wm.ActivityTaskManagerService.DUMP_STARTER_CMD;
import static com.android.server.wm.ActivityTaskManagerService.DUMP_TOP_RESUMED_ACTIVITY;
import static com.android.server.wm.ActivityTaskManagerService.DUMP_VISIBLE_ACTIVITIES;
import static com.android.server.wm.ActivityTaskManagerService.RELAUNCH_REASON_NONE;
import static com.android.server.wm.ActivityTaskManagerService.relaunchReasonToString;
@@ -9546,7 +9547,8 @@ public class ActivityManagerService extends IActivityManager.Stub
|| DUMP_LASTANR_CMD.equals(cmd) || DUMP_LASTANR_TRACES_CMD.equals(cmd)
|| DUMP_STARTER_CMD.equals(cmd) || DUMP_CONTAINERS_CMD.equals(cmd)
|| DUMP_RECENTS_CMD.equals(cmd) || DUMP_RECENTS_SHORT_CMD.equals(cmd)
|| DUMP_TOP_RESUMED_ACTIVITY.equals(cmd)) {
|| DUMP_TOP_RESUMED_ACTIVITY.equals(cmd)
|| DUMP_VISIBLE_ACTIVITIES.equals(cmd)) {
mAtmInternal.dump(
cmd, fd, pw, args, opti, true /* dumpAll */, dumpClient, dumpPackage);
} else if ("binder-proxies".equals(cmd)) {

View File

@@ -331,6 +331,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
public static final String DUMP_RECENTS_CMD = "recents";
public static final String DUMP_RECENTS_SHORT_CMD = "r";
public static final String DUMP_TOP_RESUMED_ACTIVITY = "top-resumed";
public static final String DUMP_VISIBLE_ACTIVITIES = "visible";
/** This activity is not being relaunched, or being relaunched for a non-resize reason. */
public static final int RELAUNCH_REASON_NONE = 0;
@@ -4063,6 +4064,25 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
}
}
void dumpVisibleActivitiesLocked(PrintWriter pw) {
pw.println("ACTIVITY MANAGER VISIBLE ACTIVITIES (dumpsys activity visible)");
ArrayList<ActivityRecord> activities =
mRootWindowContainer.getDumpActivities("all", /* dumpVisibleRootTasksOnly */ true,
/* dumpFocusedRootTaskOnly */ false, UserHandle.USER_ALL);
boolean needSeparator = false;
for (int i = activities.size() - 1; i >= 0; i--) {
ActivityRecord activity = activities.get(i);
if (!activity.isVisible()) {
continue;
}
if (needSeparator) {
pw.println();
}
activity.dump(pw, "", true);
needSeparator = true;
}
}
void dumpActivitiesLocked(FileDescriptor fd, PrintWriter pw, String[] args,
int opti, boolean dumpAll, boolean dumpClient, String dumpPackage) {
dumpActivitiesLocked(fd, pw, args, opti, dumpAll, dumpClient, dumpPackage,
@@ -6295,6 +6315,8 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
}
} else if (DUMP_TOP_RESUMED_ACTIVITY.equals(cmd)) {
dumpTopResumedActivityLocked(pw);
} else if (DUMP_VISIBLE_ACTIVITIES.equals(cmd)) {
dumpVisibleActivitiesLocked(pw);
}
}
}