为什么一个家庭"按下主页按钮后活动将被杀死?

时间:2014-11-07 07:07:03

标签: android android-launcher android-homebutton

我创建了一项活动,将其过滤器设置为主页活动,并将launchMode设置为singleTask。当我按下主页时,活动将处于暂停状态,然后是onStop。令我感到困惑的是,为什么从“主页选择”对话框中显示的图标返回时,活动将重新启动?它会在未调用onCreate()的情况下再次调用onDestroy()

我知道有一种方法可以解决这个问题,即将launcherMode设置为singleIstance,但这种方式还不够好,因为它会导致另一个问题,即活动不会能够处理onActivityResult

1 个答案:

答案 0 :(得分:0)

您可能想要告诉您希望实现的目标。因为这就是singleTask的方式。它将现有意图提供给现有活动实例的onNewIntent()。因此,活动不会被销毁,但会调用onCreate(),因为它将使用现有意图重新创建活动。

引用documentation

  

系统在新任务的根目录下创建活动并将意图路由到该任务。但是,如果活动的实例已经存在,系统会通过调用onNewIntent()方法将意图路由到现有实例,而不是创建新实例。