我的情景:
我有3项活动。来自活动2 - 活动3 ...在活动3上我按下主页
然后从Filemanager应用程序,我有一个我需要导入的zip文件。单击zip文件时,我的应用程序将启动并导入活动1中的设备列表。
然后我转到活动2 - 活动3。
从活动3开始,按后退键。它将我带到Activity 2.我再次按回键(它应该从活动2退出我的应用程序)。但是它又把我带到了活动3。从那里开始,当按下后退键时,我被卡住了。
我认为,因为我第一次按Home键。活动3在后面。然后,当我从另一个应用程序启动应用程序..我认为已经创建了2个实例。
我真的不知道如何解决这个问题。
我希望后退键功能为:
活动3 - 后退键 - 活动2 - 后退键 - 退出应用
答案 0 :(得分:0)
将启动模式用作活动3的FLAG_ACTIVITY_SINGLE_TOP
检查此doc
答案 1 :(得分:0)
我认为,因为我第一次按Home键。活动3是 在后面。然后,当我从另一个应用程序启动应用程序..我想 已经创建了2个实例。
您是对的,默认情况下Android
如果您没有为activity
设置任何标记,则可以为multiple instances
创建activity
。在您的情况下,您有多个instances
activity
2和3。
为达到你想要的效果,我建议如下。
当您致电activity 1,
start
时,从activity 2
开始,尝试在intent
下面添加以下代码行,以清除backstack
activity
}。
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);