在MainActivity中,我有用于关闭应用程序的代码:
@Override
public void onBackPressed() {
if (exit){
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();
super.onBackPressed();
}else {
exit = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
exit = false;
}
}, 3 * 1000);
}当我想要关闭应用程序时,我应该按2个后退按钮。
问题是,当我关闭应用程序时,它从另一个活动开始,主要是从我去过的最后一个活动开始。
如何始终从mainActivity启动活动,而不是从其他活动?
发布于 2015-05-14 13:14:11
使用以下代码行..
@Override
public void onBackPressed() {
super.onBackPressed();
if (exit){
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_TASK_ON_HOME);
finish();
}else {
exit = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
exit = false;
}
}, 3 * 1000);
}
}发布于 2015-05-14 13:06:23
当你关闭你的应用程序时,你必须杀死所有的活动,看看这个How to kill an application with all its activities?
发布于 2015-05-14 13:10:48
覆盖MainActivity的onBackPressed方法,如下所示
private int backpressedCount;
@Override
public void onBackPressed() {
backpressedCount++;
if (backpressedCount == 2) {
android.os.Process.killProcess(android.os.Process.myPid());
}
}https://stackoverflow.com/questions/30229575
复制相似问题