首页按返回键退出:
private long mExitTime;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if ((System.currentTimeMillis() - mExitTime) > 2000) {
Toast.makeText(this, "再按一次退出程序", Toast.LENGTH_SHORT).show();
mExitTime = System.currentTimeMillis();
} else {
finish();
///System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
protected void onDestroy() {
super.onDestroy();
System.exit(0);
}
功能应用退出:
在Application添加:
ArrayList<Activity> activitys = new ArrayList<Activity>();
/**
* Activity关闭时,删除Activity列表中的Activity对象*/
public void removeActivity(Activity a){
activitys.remove(a);
}
/**
* 向Activity列表中添加Activity对象*/
public void addActivity(Activity a){
activitys.add(a);
}
/**
* 关闭Activity列表中的所有Activity*/
public void finishActivity(){
for (Activity activity : activitys) {
if (null != activity) {
activity.finish();
}
}
//杀死该应用进程
android.os.Process.killProcess(android.os.Process.myPid());
}
然后在每个Activity中添加
MealApplication.getInstance().addActivity(this);
在功能退出:
MealApplication.getInstance().finishActivity();