问题:
- Activity launchMode启动模式 Activity A和B分别为standard启动模式,C为singleInstance启动模式,那么A启动B,B启动C,C再启动B后,任务栈是什么样子的?
我的理解:
应该是有两个任务栈,任务栈1为C,任务栈2从栈顶到栈底为BBA。
下面是验证环节:
验证方法是:adb shell dumpsys activity activities > activity4.txt
验证结果是:
Task display areas in top down Z order:
TaskDisplayArea DefaultTaskDisplayArea
mLastOrientationSource=Task{c7d9ae2 #13 visible=false type=standard mode=fullscreen translucent=true A=10155:com.sensorsdata.sdk.demo U=0 StackId=13 sz=3}
mPreferredTopFocusableStack=Task{c7d9ae2 #13 visible=false type=standard mode=fullscreen translucent=true A=10155:com.sensorsdata.sdk.demo U=0 StackId=13 sz=3}
mLastFocusedStack=Task{c7d9ae2 #13 visible=false type=standard mode=fullscreen translucent=true A=10155:com.sensorsdata.sdk.demo U=0 StackId=13 sz=3}
Application tokens in top down Z order:
* Task{c7d9ae2 #13 visible=false type=standard mode=fullscreen translucent=true A=10155:com.sensorsdata.sdk.demo U=0 StackId=13 sz=3}
mLastOrientationSource=ActivityRecord{1e3dcf1 u0 com.sensorsdata.sdk.demo/.BActivity t13}
bounds=[0,0][1080,2160]
* ActivityRecord{1e3dcf1 u0 com.sensorsdata.sdk.demo/.BActivity t13}
* ActivityRecord{995bedb u0 com.sensorsdata.sdk.demo/.BActivity t13}
* ActivityRecord{a90af28 u0 com.sensorsdata.sdk.demo/.MainActivity t13}
* Task{545e5a2 #14 visible=true type=standard mode=fullscreen translucent=false A=10155:com.sensorsdata.sdk.demo U=0 StackId=14 sz=1}
mLastOrientationSource=ActivityRecord{547cf9f u0 com.sensorsdata.sdk.demo/.CActivity t14}
bounds=[0,0][1080,2160]
* ActivityRecord{547cf9f u0 com.sensorsdata.sdk.demo/.CActivity t14}
其中Task #13:
* ActivityRecord{1e3dcf1 u0 com.sensorsdata.sdk.demo/.BActivity t13}
* ActivityRecord{995bedb u0 com.sensorsdata.sdk.demo/.BActivity t13}
* ActivityRecord{a90af28 u0 com.sensorsdata.sdk.demo/.MainActivity t13}
Task #14:
* ActivityRecord{547cf9f u0 com.sensorsdata.sdk.demo/.CActivity t14}