MainActivity --启动--> ActivityA(singleInstance)
Task 2 Back Stack in the foreground:
ActivityA
Task 1 Back Stack:
MainActivity
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB
Task 1 Back Stack in the foreground:
ActivityB
MainActivity
Task 2 Back Stack:
ActivityA
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB ----> ActivityA
Task 2 Back Stack in the foreground:
ActivityA
Task 1 Back Stack:
ActivityB
MainActivity
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB ----> ActivityA ----> ActivityB
Task 1 Back Stack in the foreground:
ActivityB
ActivityB
MainActivity
Task 2 Back Stack:
ActivityA
用以下调试命令查看堆栈:
adb shell dumpsys activity activities
Task 2 Back Stack in the foreground:
ActivityA
Task 1 Back Stack:
MainActivity
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB
Task 1 Back Stack in the foreground:
ActivityB
MainActivity
Task 2 Back Stack:
ActivityA
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB ----> ActivityA
Task 2 Back Stack in the foreground:
ActivityA
Task 1 Back Stack:
ActivityB
MainActivity
MainActivity --启动--> ActivityA(singleInstance)--启动--> ActivityB ----> ActivityA ----> ActivityB
Task 1 Back Stack in the foreground:
ActivityB
ActivityB
MainActivity
Task 2 Back Stack:
ActivityA
用以下调试命令查看堆栈:
adb shell dumpsys activity activities
本文解析了Android中单实例Activity(singleInstance)在不同任务栈间的启动与切换行为,展示了Activity如何在前台和后台任务栈中进行切换,并通过adb shell命令演示了具体的堆栈状态变化。
1万+

被折叠的 条评论
为什么被折叠?



