我正在尝试使用此方法关闭应用程序:System.exit(0); 但是我回到了另一个活动!我该如何解决这个问题? 感谢
答案 0 :(得分:2)
您不应该使用System.exit(0)
。请改用finish()
。finish
将从活动后台堆栈中弹出活动并将其销毁。后栈中的先前活动需要重点关注。
查看Dianne Hackborn的链接和评论
https://groups.google.com/forum/#!topic/android-developers/Zhd1fRfHAAQ
查看Romain Guy的链接和评论
https://groups.google.com/forum/#!topic/android-developers/G_D3pKnGLt0
引自波士顿街道的评论
https://groups.google.com/forum/#!topic/android-developers/Y96KnN_6RqM
您不应该调用System.exit()。它可能会破坏Android对您活动生命周期的处理并导致尴尬的用户体验(例如,在杀死该过程时,之前您开展活动的活动可能也会消失.Android可能会尝试重新启动该过程并重新创造意外杀死 亲子活动。但仍然)。
public static void exit (int code)
Added in API level 1
Causes the VM to stop running and the program to exit. If runFinalizersOnExit(boolean) has been previously invoked with a true argument, then all objects will be properly garbage-collected and finalized first.
Parameters
code the return code.
Is quitting an application frowned upon?
如果您正在寻找导航使用操作栏和导航栏。
答案 1 :(得分:1)
不建议这样做,但这应该完全杀掉应用程序。
android.os.Process.killProcess(android.os.Process.myPid());
要正常退出,您只需从主要活动中调用Finish()
即可。