Android - 如何从最近使用的应用中删除活动?

16
我在我的安卓应用程序中创建了一个自定义对话框。这个对话框是一个具有对话框主题的活动。现在,假设该应用正在显示此对话框,用户按下“主页”回到安卓主视图。稍后,用户按住主页按钮,然后从最近使用的应用程序中选择我的应用程序。它将再次显示对话框。 我想要做的是对话框不应该显示。我想要显示调用此对话框的活动。
我该怎么做?

这个问题可能问的是同样的事情,但我发现它简短、简单而且直接。我遇到了同样的问题,重复的问题太长了,阅读起来很困惑。 - Talha
4个回答

53
如何从最近使用的应用程序中删除活动? 我认为在您的清单中使用android:excludeFromRecents =“true”应该可以解决问题。
要做的是,对话框不应显示。 在onPause()中使用dialog.cancel()。

运行得非常好。 但请记住,当活动处于活动状态(已启动)时,它仍将显示在最近使用的应用程序中。 - Taras Lozovyi

5

你也可以使用标志Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS:

.....
i.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
startActivity(i);

您启动的活动将不会出现在最近使用的应用程序中。

2

0
你可以重写你的对话框活动中的 onStop() 方法。
@Override
protected void onStop() {
   super.onStop();
   finish();
}

然而,这也意味着当设备锁定时,您的对话框将关闭。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接