java - 使用 System.exit(0) 强制退出 Android 应用程序不起作用

标签 java android quit system.exit

当我尝试通过覆盖 Android 设备后退按钮和“System.exit(0)”的功能来退出我的 Android 应用程序时,这不起作用。

我有一个名为“LoginActivity”的 Activity 和一个名为“OverviewActivity”的 Activity 。

当我在 OverviewActivity 中启动 Intent 以切换到 LoginActivity 时,这有效。

Intent changeViewIntent = new Intent(OverviewActivity.this,
            LoginActivity.class);
startActivity(changeViewIntent);

现在我在LoginActivity中,有被覆盖的方法:

@Override
public void onBackPressed() {
    System.exit(0);
}

但是当我按下后退键时(例如在设备模拟器中),屏幕空白一毫秒,然后返回到 OverviewActivity。

为什么会这样?我只想在按下后退键时强制关闭。

无法在 list 中禁用 OverviewActivity 的历史记录,因为有多种方法可以从其他 Activity 访问 OverviewActivity。

也许有一个想法? Android 4 是最低要求,因此它不必在较低版本上工作..

谢谢!

最佳答案

可以通过删除整个 Activity 调用历史并启动主页屏幕的主页 Activity 来实现退出。

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

关于java - 使用 System.exit(0) 强制退出 Android 应用程序不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27050357/

相关文章:

python - 如何从自定义库结束主函数?

python - 如何退出 Python 函数,在不退出 Python 解释器的情况下抛出错误语句

java - 如何在 Spring MVC 3 中实现分页

java - 子串索引范围

Java:在 super 之前在子类中分配最终变量

cmd - openssl 挂起并且不退出

java - fatal error - 构建 POM 时出错(可能不是该项目的 POM)

java - 无法获取提供商 com.google.android.gms.measurement.AppMeasurementContentProvider

java - SetAdapter 与 My FriendsArrayAdapter 上的 NullPointerException

带有警告对话框的 Android 退出按钮