我在 Android 应用程序中遇到奇怪的问题。每当我完成 Activity 甚至强制关闭应用程序时,它都会重新启动。
以下是应用程序流程:
应用程序打开时会显示闪屏,这是一个 Activity ,然后转到主 Activity ,其中内容显示在 fragment 中。现在,当我在后按时完成主要 Activity 时,应用程序会重新启动而不是关闭。
我像这样启动MainActivity
Intent mainIntent = new Intent(SplashActivity.this, MainActivity.class);
startActivity(mainIntent);
在MainActivity
中我像这样完成它
MainActivity.this.finish();
并像这样退出应用程序
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
如何解决这个问题?
谢谢
最佳答案
您应该使用以下标记启动 MainActivity
Intent launchNextActivity;
launchNextActivity = new Intent(B.class, A.class);
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
launchNextActivity.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(launchNextActivity);
现在,在您想要实现 onBackPressed 来关闭应用程序的 MainActivity 中,您可以执行以下操作,
private Boolean exit = false;
@Override
public void onBackPressed() {
if (exit) {
finish(); // finish activity
} else {
Toast.makeText(this, "Press Back again to Exit.",
Toast.LENGTH_SHORT).show();
exit = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
exit = false;
}
}, 3 * 1000);
}
}
现在,当您按后退按钮时,它会提示“按后退增益退出”,如果用户在 3 秒内按后退按钮,应用程序将退出
关于android - 完成主要 Activity 导致 Android 应用程序重新启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39116972/