检查应用程序是从最近的应用程序还是从启动器图标恢复
Posted
技术标签:
【中文标题】检查应用程序是从最近的应用程序还是从启动器图标恢复【英文标题】:Checking if the app was resumed from recent apps or from the launcher icon 【发布时间】:2015-03-01 03:30:00 【问题描述】:我想区分用户从“最近的应用程序”列表或启动器图标恢复我的应用程序的事件,即使后台有一个未完成的应用程序运行。
我的应用是一个包含多个 Fragments
的单个 Activity
,预期的行为是,如果用户从“最近的应用”恢复,我不需要做任何事情,因为默认行为会将它们带回片段他们把它留在了。但是,当用户再次从图标启动应用程序时,我想将片段管理器中的所有片段弹出到第一个片段,本质上就像重新启动应用程序一样。
尽管现在,即使用户点击启动器图标,应用程序也会像往常一样从“最近的应用程序”列表中恢复,而不会在 Activity
上调用 onCreate()
。
我看过类似的问题,但它们似乎表明当用户再次从图标启动时会重新创建活动,这很奇怪,而不是我观察到的:android resume app from recent applications list
有什么想法吗?
【问题讨论】:
我认为没有办法做到这一点,抱歉。 这是标准的 Android 行为。 “通过主屏幕上的图标启动应用程序”和“通过从最近任务列表中选择应用程序启动应用程序”之间没有区别。这两个动作完全相同,您无法区分。不幸的是,您在帖子中链接到的问题的公认答案是错误的:-( 【参考方案1】:您可以尝试将此属性添加到您的活动清单文件中。
<activity>
...
android:launchMode="singleTask"
</activity
【讨论】:
以上是关于检查应用程序是从最近的应用程序还是从启动器图标恢复的主要内容,如果未能解决你的问题,请参考以下文章