Android连续按下2次Back键,退出应用程序。
/ 记录上次按下的时间
private long lastDownTime;
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 判断当前按下的是不是BACK键
if (keyCode == KeyEvent.KEYCODE_BACK) {
// 获取当前按下的时间
long currentDownTime = System.currentTimeMillis();
// 与前一次按下的时间对比
if (currentDownTime - lastDownTime <= 1500) {
// 2次按下的时间差不足1500ms,属于连续按下,则退出
finish();
} else {
// 2次按下的时间差超过1500ms,则使用Toast提示需要再按一次BACK键
Toast.makeText(this, "连接按下2次BACK键以退出应用程序!", Toast.LENGTH_SHORT).show();
// 记录本次按下的时间
lastDownTime = currentDownTime;
// 返回
return true;
}
}
return super.onKeyDown(keyCode, event);
}