希望有人能帮我弄清楚,如果不是解决方案,至少可以解释一种行为。
The Problem:
在一些设备上,按下启动器图标会导致当前任务被恢复,而在其他设备上,它会导致初始启动意图被触发(有效地重新启动应用程序)。这一切为什么要发生?
细节:
当你按下“启动器图标”时,应用程序会正常启动--也就是说,我假设你的第一个Activity
的名字是动作android.intent.action.MAIN
和类别android.intent.category.LAUNCHER
。然而,情况并不总是如此:
在大多数设备上,如果您在应用程序运行后按下启动器图标,则会恢复该进程中当前正在运行的活动(而不是初始Activity
)。它恢复的方式与您从操作系统菜单的“最近的任务”中选择它的方式相同。这是我希望在所有设备上实现的行为。
但是,在选定的其他设备上会发生不同的行为:
Activity
。我假设启动器图标总是启动“启动器”意图。Activity
(与Xoom相同)-但是,在安装后重新启动设备后,启动器图标将恢复应用程序。我假设这些设备在设备启动时将“已安装的应用程序”添加到一个查询表中,从而允许启动器图标正确地恢复运行任务-我读过很多类似于我的问题的答案,但简单地在Activity
中添加android:alwaysRetainTaskState="true"
或使用launchMode="singleTop"
不是解决问题的方法。
编辑:
在最近一次启动此应用程序后,我们发现在第一次重启后,所有设备上都开始出现这种行为。这对我来说似乎很疯狂,但通过重启过程,我实际上找不到哪里出了问题。
https://stackoverflow.com/questions/19545889
复制相似问题