我尝试了一些退出应用程序的方法,但每种方法都只是最小化了应用程序。我想关闭应用程序而不是最小化它。退出按钮位于MainAcitivity中。
现在我正在调用这个函数,它可以工作但不是我需要的。
public void AppExit()
{
this.finish();
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
我知道这个问题很多,但我找不到我需要的解决方案。
根据您的建议我使用此功能
public void AppExit()
{
System.exit(0);
finish();
}
答案 0 :(得分:1)
如果您想退出为什么再次开始活动。 仅使用this.finish(),删除其他语句。 请查看活动生命周期以获取更多信息
答案 1 :(得分:1)
很少有事情。在你的代码中你可以把finish();在startActivity之后,这可能有所帮助(对我而言)。
应如何做到这一点是指南已经采用的方式。后退按钮确实关闭了应用程序。如果您按后退按钮然后重新启动应用程序,您将进入第一页活动,而不是中断的位置。
关于后退按钮,您可以覆盖它以控制它如果您对它不满意它会做什么。您可以将代码放在那里,当用户按下后退按钮时,它将执行代码。用户更习惯于按下后退按钮而不是布局中的按钮(我认为这是你可能正在做的事情)。
如果你坚持自己拥有的东西,这可能会有所帮助:How to clear the Android Stack of activities?
答案 2 :(得分:0)
尝试使用此单行代码:
System.exit(0);
答案 3 :(得分:0)
您需要使用Intent.FLAG_ACTIVITY_CLEAR_TOP导航到您的主要活动,向其传递一些数据,知道您将退出该应用程序。只需在主要活动中致电完成。
另一个建议是Kamlesh Arya回答。这不是一个坏习惯,因为它不会破坏活动堆栈,下次使用午餐你的应用程序它不会从主要活动开始,而是从最后一个活动活动开始。