假说有两个Activity, Activity1和Activity2, 1跳转到2,如果要在2退出程序,一般网上比较常见的说法是用System.exit()或是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>