做android开发时,发现一个关于android退出时不能彻底关闭的问题,比如:一个程序里new 出了N多个Thread,这样在退出程序的可能不能完全关闭,最后发现,只用finish()方法,有时候不能彻底退出,个人感觉还是要在适当的地方加上:System.exit(0); ----------------------------------------------------------------------------- 前言: finish():结束当前Activity,不会立即释放内存。遵循 android内存管理机制。 exit():结束当前组件如Activity,并立即释放当前Activity所占资源。 killProcess():结束当前组件如Activity,并立即释放当前Activity所占资源。 restartPackage():结束整个App,包括 service等其它 Activity组件。 1. finish()方法 该方法可以结束当前Activity,但是如果你的App有很多Activity 的话,使用该方法显得有点捉襟见肘了。 另外,还有一个方法finishActivity (int requestCode) ,关于这个方法,先看看 sdk的api说明吧! public voidfinishActivity (int requestCode) Since: APILevel 1 Force finishanother activity that you had previously started withstartActivityForResult(Intent, int). ParametersrequestCode The request code of the activity that you had given tostartActivityForResult(). If there are multiple activities started with thisrequest code, they will all be finished. 也许你会这样理解 ,Activity1 通过方法startActivityForResult (Intent, int) 启动Activity2,然后在Activity2 中通过方法finishActivity (intrequestCode)来结束Activity1,但是很不幸运,不是这样的。不信你可以 Demo一把! 上面文档说得很明白,该方法强制关闭通过方法startActivityForResult (Intent, int)启动的Activity,也就是说在Activity1 中的(重写)方法onActivityResult(intrequestCode, int resultCode, Intent data) 来接收Activity2返回的结果,必须在Activity1 中调用finishActivity(int requestCode)来结束Activity2。(一般在onActivityResult 方法调用该方法结束Activity2)。 Force finishanother activity that you had previously started withstartActivityForResult(Intent, int). Parameters 还有,下面两个方法,可以参阅文档以及源码研究一下。 finishActivityFromChild(Activity ch...