android - 退出安卓应用

标签 android android-activity

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

并使用这个方法

moveTaskToBack(true);

我正在开发一个应用程序,在最后一个 Activity 中我需要退出它,我使用了上述退出应用程序的方法问题是它只存在于 Activity 和应用程序在后台运行(在任务中看到经理)。每当我再次加载应用程序时,它都会从我退出的位置(最后一个 Activity )开始。

是否有任何代码可以完全退出它并删除表单背景(任务管理器)。

提前致谢。

最佳答案

要退出您的应用程序,请按以下方式返回您的根 Activity (启动器启动的第一个 Activity ):

Intent intent = new Intent(this, MyRootActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addExtra("exit", "true");
startActivity(intent);

这将清除任务堆栈直至根 Activity,然后使用此 Intent 再次启动根 Activity。

在您的根 Activity 中,在 onCreate() 中,您需要根据 Intent 中的额外内容来确定是否退出,如下所示:

Intent intent = getIntent();
if (intent.hasExtra("exit")) {
    // User wants to exit
    finish();
}

您还谈到了从任务管理器中删除您的应用程序。如果您指的是“最近应用程序列表”,这不是“正在运行的应用程序”列表,而是用户最近使用的应用程序列表。仅仅因为您的应用出现在那里并不意味着它正在运行。

如果您真的不希望您的应用出现在“最近使用的应用列表”中,只需将其添加到您的根 Activity 的 list 条目中:

android:excludeFromRecents="true"

关于android - 退出安卓应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14314973/

相关文章:

java - 如何从项目资源管理器在 Android Studio 中创建新的 Android Activity ?

android - 如何在 koin 中正确添加两个模块?

android - 任何人都可以看到我的应用程序正在使用的背景网址。就像使用 volley 发出的 http 请求一样。

java - 在后退按钮后再次创建 Activity 时,Parcelable 数据不可用

Android:如何从其他 Activity 更改项目列表中的可绘制对象

java - 从一项 Activity 传递对象时出现问题

java - 如何使用操作栏上的按钮打开另一个 Activity ?

android - 保留对 SharedPreferences 及其编辑器的静态引用是否安全?

android - 使用 AppCompat 的上下文操作栏

java - 在标记中显示信息