网上看了几种解决app退出程序的方案:
在application中去exit()循环遍历finish()的
for (int a = 0; a < activityList.size(); a++) { ((Activity) activityList.get(a)).finish(); } System.exit(0);这样需要在每一个activity中先去add()
下面分享下只需要在开屏页退出的代码
private long lastBackTime = 0; private static final long TIME_INTERVAL = 2 * 1000;
@Override public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) { long currentBackTime = System.currentTimeMillis(); Toast.makeText(this, R.string.press_back_twice, Toast.LENGTH_SHORT).show(); //双击退出程序 if (currentBackTime - lastBackTime > TIME_INTERVAL) { lastBackTime = currentBackTime; } else { // finish(); // 直接点击返回 home Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); android.os.Process.killProcess(android.os.Process.myPid()); } return true; } return super.onKeyDown(keyCode, event); }