【发布时间】:2017-12-05 01:01:46
【问题描述】:
我的应用有一项在后台运行的服务。它会根据用户的意图唤醒,该意图通常是从另一个应用程序生成的(例如从 Web 浏览器共享到我的应用程序)。服务完成执行任务后,我希望它打开一个活动,显示有关已完成任务的一些信息。当用户查看完此信息后,我希望他们能够点击“返回”或“关闭”并返回他们之前所做的事情(不在我的应用程序中)。
我只是设法让活动关闭,将我的应用程序的主要活动留在屏幕的前面和中心。仅当应用程序仍在运行时才会发生这种情况。如果它被杀死,那么它会正确返回到生成用户意图的 Web 浏览器。
如何使“返回”按钮关闭活动并返回到启动整个工作流程的上一个应用程序?
编辑:
这是我在 android 服务中执行的代码:
Intent intent = new Intent(this, TestActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
当我点击 TestActivity 的后退按钮时,它会返回我的应用程序的主要活动,而不是服务启动时我所在的上一个应用程序 TestActivity。
【问题讨论】:
标签: android android-intent android-activity android-service back-stack