最新消息:网站改版咯

android结束整个进程

移动App Yovae 1386浏览

在android开发中指门结束整个程序,1.5版本中用

finish()

就可以退出整个应用程序,而在后续版本如sdk2.2中finish()只能退出一个页面。那怎么才能结束android进程呢。

我们假设有两个Activity, Activity1和Activity2, 1跳转到2,如果要在2退出程序,一般网上比较常见的说法是用

System.exit(0)

或是

android.os.Process.killProcess(android.os.Process.myPid())

但实际应用中,并不是能够真正退出,问题出在?

1跳转到2时,如果Activity1你finish掉了,两么是可以退出程序的,但有时1跳转到2时,我们不能将Activity1 finish掉,那么在Activity2就不能退出程序。于是有更好的退出程序的方法,不管你有没有finish前一个activiy都可以退出程序,
或是

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

但记得在androidmanifest.xml里添加权限

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

以上方法在2.1版本以前都能使用,但是2.2以后统统作废,正确解决方案如下:
Intent startMain = new Intent(Intent.ACTION_MAIN);

startMain.addCategory(Intent.CATEGORY_HOME);

startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(startMain); System.exit(0);

以上android结束进程的方法希望能帮助大家。

 

转载请注明:Yovae Studio » android结束整个进程