想象一个应用程序,其中 Activity A 是默认的Activity,并且launchMode =“singleTask”。该应用程序将打开活动A.用户浏览应用程序,并在某些时候再次导航到活动A(向前移动,而不是向后按)。根据Android文档,因为launchMode =“singleTask”,所以会发生这种情况:
系统在新任务和路由的根目录下创建活动 意图。但是,如果活动的实例已经存在 存在,系统通过a将意图路由到现有实例 调用它的onNewIntent()方法,而不是创建一个新方法。
活动A存在于后台堆栈上,因此它将接收对onNewIntent()的调用。我想知道的是,当活动A从后堆栈的底部带到顶部时,其他活动会发生什么?
它们是否被弹出或破坏或者是否会发生其他事情?他们甚至在同一堆栈中吗?
提前致谢...
答案 0 :(得分:0)
来自Android文档: http://developer.android.com/images/fundamentals/diagram_backstack_singletask_multiactivity.png
A representation of how an activity with launch mode "singleTask" is added to the back stack. If the activity is already a part of a background task with its own back stack, then the entire back stack also comes forward, on top of the current task.