退出应用程序杀死进程

应用程序在退出杀死进程的时候,使用

1    finish();---------------关闭Activity

2    system.exit(0);----------------退出java虚拟机,每一个安卓程序打开的同时都会产生一个java虚拟机;

3   android.os.Process.killProcess(android.os.Process.myPid());-----------杀死当前进程;

中的任何一个好像都好像没杀干净,一会儿程序又复活了,这是因为你的程序在启动的时候也开启的服务,服务把你程序的进程又给唤醒了,导致你的程序

复活,解决的办法就是关闭服务,关闭进程,这样应用程序就能干净的退出了,不会在像病毒一样除不去了,关闭服务请参考以下代码:

startService对应unbindService;    

this.bindService对应stopService(commonintent);

 

 

 

附加上我杀死进程的代码:

ActivityManager am = (ActivityManager)getSystemService(getApplicationContext().ACTIVITY_SERVICE);
   am.restartPackage(getPackageName());

      this.unbindService(mServiceConnection);
      this.stopService(commonintent);
      android.os.Process.killProcess(android.os.Process.myPid());
   System.exit(0);

 还需要添加权限:

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

你可能感兴趣的:(java,虚拟机,service)