背景
我的应用(我称之为“ A ”)可以从意图启动。如果单击特定URL,则会打开 A 。
A 有自定义导航,因此后退按钮并不总是覆盖super.onBackPressed()或finish()它。
问题:
从另一个应用程序打开 A 后,可以说电子邮件应用程序(我将其称为“ E ”), A 无法返回到 E 。如果我单击“任务”按钮,用户可以看到当前正在运行的应用程序的名称,图标和缩略图,我可以看到 E (图标和名称)具有缩略图 A ,而不是 E 。当我点击它时,我会转到 A ,并且无法返回 E 。
问题:
有没有办法从 A 返回 E ? 我应该跟踪活动堆栈,以便随时回复它吗? 我知道我无法强制关闭某个应用程序,但我可以在 A E 关闭 E 打开 A 吗? >是开放的吗?有没有办法在意图上指定这种行为?
提前致谢。
答案 0 :(得分:0)
我找到了一个有效的解决方案。
我检查 A 的活动是否来自 E ,在这种情况下,我清除活动堆栈并重新启动 A 。
if(comesFromE()){
Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
finish();
}