当我尝试通过覆盖 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/