我阅读了关于任务和回栈的内容,但仍然没有混淆。我只是在尝试不同的事情,并且讨论了一个案例。举个例子: 我们有两个应用程序A1和A2。 A1有一个活动,称为A1_first(也是主要活动),A2有两个活动A2_first(主要活动)和A2_second。 A2_second是一个singleTask活动。 A1_frist在按下按钮时调用A2_second,A2_first在按钮按下时调用A2_second。理解回栈和任务难度
如果我启动A2我可以看到A2_first屏幕,按下按钮后我去A2_second(如预期),但假设我第一次推出A1和后按下按钮A2_second,现在从发射按Home键,并再次A2图标,我达到了A2_秒,但我预计会达到A2_first。
我不明白我错过了什么。有人可以解释 按A2 A1_first -----> A2_second ----> home -----------------> A2_second(为什么不是A2_first ?? A2_first是主要活动对于A2)。
约定大卫,我不应该使用单一的任务,但我不使用这个来创建任何应用程序,我试图做深入的潜水。 我仍然有疑问,因为当我点击图标时,我看到整个任务进入前台(并且你看到你离开的位置),但在这种情况下,A2_first和A2_second应该属于不同的任务,如“http://developer.android .com/guide/components/tasks-and-back-stack.html“: ”SingleTask“系统创建一个新任务并在新任务的根目录下实例化活动。 所以如果我按A2的图标任务相关的A2_first应该在前台。 – user1875798
不是。它比这更复杂。还有“taskAffinity”的概念。由于A2_first和A2_second具有相同的“taskAffinity”,所以当您按下A2图标时,它会将任何任务带到具有此taskAffinity的前景。如果你真的想要单独的任务,那么你需要使用单独的图标,并为A2_second设置“android:taskAffinity =”“'。 –
谢谢loooooooooooooooot ...明白了你的观点。 – user1875798