0

我有5个活动。当我点击这 5 个活动中的任何一个按钮时,我想关闭应用程序,当我重新打开它时,我想从第一个活动启动应用程序。谁能帮我。

我使用了这段代码:

    CurrentActivity.this.moveTaskToBack(true);
    android.os.Process.killProcess(android.os.Process.myPid());

它工作正常,但是当我重新启动应用程序时,它不显示第一个活动。

4

3 回答 3

0

您正在执行的操作不是正确的方法,因为您正在杀死进程,该进程会杀死进程中的所有活动。这会使您的应用程序在您再次打开它时变得不稳定。您当前使用的内容是在 android 任务管理器中使用的,这是唯一授权的方式杀死应用程序。我建议你使用finish()。

于 2013-01-31T14:01:14.747 回答
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);
于 2014-03-21T11:56:42.967 回答
0

使用 finish() 从 backstack 中弹出您的 Activity 但始终注意BackStack,您可以使用以下标志清除您的后退堆栈:FLAG_ACTIVITY_CLEAR_TOP并在启动 Activity 时使用此标志,因此当您开始第 5 个 Activity 时,只有您的堆栈中的第 5 个 Activity 并完成它会导致您的应用程序关闭。

于 2013-01-31T13:47:59.013 回答