长话短说,我有一个始终由LAUNCHER(即主屏幕)调用的LaunchActivity。然后它启动LoginActivity然后自行关闭。
这是流程:
当应用程序第二次启动时,可能会发生两件事:
(2)似乎发生在我重启Eclipse和模拟器时(是的,我知道,黑魔法)。
一些额外的信息:我没有使用任何启动标志,我的清单没有定义任何launchModes。
答案 0 :(得分:3)
我想你想设置android:launchMode =“singleTask”这里有一个基本的解释:
从链接“如果您的活动是从其他应用程序启动的,不使用单个应用程序 任务,但您希望这会导致您当前的应用程序到达前台 而不是在另一个应用程序的任务中启动该活动的新实例。 执行此操作的应用程序示例是浏览器。 “
通过阅读您的问题,这看起来就像您想要的那样。在LoginActivity上设置launchMode =“singleTask”,当LaunchActivity启动LoginActivity时,它应该重新启动现有的而不是创建第二个实例。
答案 1 :(得分:0)
我想这与LoginActivity是否需要在后台被杀死有关。正如activity lifecycle所解释的那样,如果系统需要资源,则可以终止已停止(不可见)的活动。