我有一个由警报事件触发的广播接收器,它检查应用程序是否处于空闲状态(用户不 Activity )。现在我想重置 Activity 堆栈并将应用程序带到第一个/默认 Activity 。

但如果我做这样的事情:

Intent intent = new Intent(context, StartUp.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP
                | Intent.FLAG_FROM_BACKGROUND | Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);

然后我的应用程序就出现在前台。

我想默默地这样做,这样用户就不会被我的应用程序打扰(显然他正在做其他事情)。

所以我的问题是如何在不启动 Activity 的情况下清除 Activity 堆栈?

最佳答案

检查您的任何 Activity 是否在前台似乎都被 here 覆盖了,尽管我还没有尝试过。然后,如果您想终止整个应用程序,请执行以下操作:

System.runFinalizersOnExit(true);
System.exit(0);

你已经完成了。希望这会帮助你。

关于android - 在不启动新 Activity 的情况下重置 Activity 堆栈,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8941284/

10-15 15:02