1. android.os.Process.killProcess(pid)

  只能终止本程序的进程,无法终止其它的

  具体代码如下:

Process.killProcess(Process.myPid());
Process.killProcess(Process.myPid());
  Process.killProcess(Process.myPid());
Process.killProcess(Process.myPid());

  2. System.exit(int code)

  例如: System.exit(0);

  该方法只能用于结束当前进程自身,在程序遇到异常,无法正常执行时,可以 通过这个方法强制退出。 

  需要注意的是: android.os.Process.killProcess(pid) 和 System.exit(int code)会导致进程非正常退出,进程退出时不会去执行Activity的onPause、onStop和onDestroy方法,那么进程很有可能错过了保存数据的机会。因此,这两个方法最好使用在出现异常的时候!大家需要注意其使用方法。

     3. Android 结束进程,关闭程序的方法 即采用下面这个类

  使用这个类的具体源代码

final ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);   
am.restartPackage(getPackageName());
final ActivityManager am = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);   
am.restartPackage(getPackageName());

   不要忘记了在配置文件中设置权限:

<uses-permission android:name="android.permission.RESTART_PACKAGES"></uses-permission>
<uses-permission android:name="android.permission.RESTART_PACKAGES"></uses-permission>

  4. 在android2.2版本之后则不能再使用restartPackage()方法,而应该使用killBackgroundProcesses()方法

  manager.killBackgroundProcesses(getPackageName());

  使用示例代码如下:

ActivityManager manager = (ActivityManager)getSystemService(ACTIVITY_SERVICE);   
manager.killBackgroundProcesses(getPackageName());
ActivityManager manager = (ActivityManager)getSystemService(ACTIVITY_SERVICE);   
manager.killBackgroundProcesses(getPackageName());

//需要在xml中加入权限声明  

<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>

注意:第一种和第一种只能结束自身进程,无法结束其它进程;第三种和第四种只能结束其它进程,不能结束自身进程;