import
android.app.Activity;
import
android.os.Bundle;
import
android.os.Handler;
import
android.os.Message;
import
android.util.Log;
import
android.view.KeyEvent;
import
android.widget.Toast;
public
class
MainActivity
extends
Activity {
private
static
final
String TAG = MainActivity_Exit.
class
.getSimpleName();
// 定義一個變量,來辨別是否退出
private
static
boolean
isExit =
false
;
private
static
Handler mHandler =
new
Handler() {
@Override
public
void
handleMessage(Message msg) {
super
.handleMessage(msg);
isExit =
false
;
}
};
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public
boolean
onKeyDown(
int
keyCode, KeyEvent event) {
if
(keyCode == KeyEvent.KEYCODE_BACK) {
exit();
return
true
;
}
return
super
.onKeyDown(keyCode, event);
}
private
void
exit() {
if
(!isExit) {
isExit =
true
;
Toast.makeText(getApplicationContext(),
"再按一次back鍵退出app"
,
Toast.LENGTH_SHORT).show();
// 利用handler延遲發送更改狀态資訊
mHandler.sendEmptyMessageDelayed(
,
2000
);
}
else
{
Log.e(TAG,
"exit application"
);
this
.finish();
}
}
}