运行adb shell dumpsys activity activities
显示当前任务及其活动。但是任务按“堆栈”分组(例如,堆栈#0,堆栈#1)。这些堆栈意味着什么?
以下结果显示了一个示例。我已经打开Play商店(任务ID#694),然后浏览其中的一个应用并触摸了开发人员的电子邮件,这为G-Mail打开了一个新任务(任务ID#696)。之后,我触摸了“主页”按钮,并通过主页启动器打开了G-Mail(任务ID#698)
如果这些任务不相关,那么为什么它们在同一堆栈中,而Home Launcher应用程序(任务ID#693)和“最近使用的应用程序”屏幕(任务ID#697)在不同的堆栈中?有人可以解释在相同或不同堆栈中的区别是什么吗?
Stack #1:
Task id #698
TaskRecord{9cfcd22 #698 A=com.google.android.gm U=0 StackId=1 sz=2}
Hist #1: ActivityRecord{a926067 u0 com.google.android.gm/.welcome.SetupAddressesActivity t698}
Hist #0: ActivityRecord{49b6dc1 u0 com.google.android.gm/.welcome.WelcomeTourActivity t698}
Task id #696
TaskRecord{e5e8110 #696 A=com.google.android.gm U=0 StackId=1 sz=1}
Hist #0: ActivityRecord{2ee23f u0 com.google.android.gm/.ComposeActivityGmailExternal t696}
Task id #694
TaskRecord{f165f44 #694 A=com.android.vending U=0 StackId=1 sz=1}
Hist #0: ActivityRecord{5b6ebee u0 com.android.vending/.AssetBrowserActivity t694}5,1668] }
Stack #0:
Task id #693
TaskRecord{e0f894 #693 I=com.motorola.launcher3/com.android.launcher3.CustomizationPanelLauncher U=0 StackId=0 sz=1}
Hist #0: ActivityRecord{5e7d381 u0 com.motorola.launcher3/com.android.launcher3.CustomizationPanelLauncher t693}
Stack #5:
Task id #697
TaskRecord{a9c0639 #697 A=com.android.systemui U=0 StackId=5 sz=1}
Hist #0: ActivityRecord{e45982b u0 com.android.systemui/.recents.RecentsActivity t697}
ResumedActivity: ActivityRecord{a926067 u0 com.google.android.gm/.welcome.SetupAddressesActivity t698}
mFocusedStack=ActivityStack{25782d stackId=1, 3 tasks} mLastFocusedStack=ActivityStack{25782d stackId=1, 3 tasks}