我有5项活动。当我点击这5个活动中的任何一个按钮时,我想关闭应用程序,当我重新打开它时,我想从第一个活动启动应用程序。任何人都可以帮助我。
我使用了这段代码:
CurrentActivity.this.moveTaskToBack(true);
android.os.Process.killProcess(android.os.Process.myPid());
它工作正常,但是当我重新启动应用程序时,它不会显示第一个活动。
答案 0 :(得分:0)
使用finish()从backstack弹出Activity但始终注意BackStack,你可以用这个标志清除你的后栈: FLAG_ACTIVITY_CLEAR_TOP 和 当你开始你的活动时使用这个标志,所以当你开始你的第五个活动时,只有你的第五个活动在堆栈中并且完成它会导致你的应用程序关闭。
答案 1 :(得分:0)
你正在做的事情是不正确的,因为你正在杀死进程中杀死进程内的每个活动。这会使你的应用程序在你再次打开时不稳定。你当前使用的是什么用于android任务管理器授权杀死申请的方式。 我建议你使用finish()。
答案 2 :(得分:0)
这是我找到的最佳方式。它会杀死应用程序的所有活动并将用户返回到主屏幕。
//Takes user to home screen
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
//Kills all activities of app
System.exit(0);