如何在Android上完成应用?

How do I finish an app on Android?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Quitting an application - is that frowned upon?

我在Android上有一个Android应用程序。它的启动方式是有一个主菜单,然后单击开始,这就是主功能所在的位置。我想知道,一旦我在一个不在堆栈底部的活动中,我想允许用户退出程序。是否有方法完成整个应用程序,而不仅仅是当前活动?


根据本文的讨论,调用System.exit(0)命令可能会在应用程序生命周期中产生不可预见的后果,并且如谷歌推荐的生产代码的其他答案和注释中所述。

这个网站上的建议似乎是合理的:

Call finish()
on your activities.
If you have multiple activities to close, use startActivityForResult() and pass back a"close now" flag so you know to call finish() on the parent activity as well.


请参考马克的答案。

还有一些有用的Intent标记,特别是flag activity clear top,它将finish活动,直到达到目标。这通常用于以登录屏幕开始并需要在用户注销时返回该屏幕的应用程序。


虽然一般认为这是不可接受的,但您可以这样做:

1
System.exit(0)

不过,正如我所说,这不是Android应用程序通常的工作方式。

编辑:我想我应该更清楚地说,这是普遍不能接受的。谷歌不希望应用程序被迫关闭,因为它可能会产生无法预料的后果。关闭应用程序的方法是手动完成每个活动。