模拟HOME键
public
boolean
onKeyDown(
int
keyCode,
KeyEvent event) {
//
TODO Auto-generated method stub
if
(keyCode
== KeyEvent.KEYCODE_BACK){
Intent
intent =
new
Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//
注意
intent.addCategory(Intent.CATEGORY_HOME);
this
.startActivity(intent);
return
true
;
}
return
super
.onKeyDown(keyCode,
event);
}
特别注意 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 这句,一定要加上,因为Activity 的 launchMode 默认是以 standard 执行的,如果不添加这个标记则 会创建新的Activity 并放在与当前Activity相同的Task中。以下是 FLAG_ACTIVITY_NEW_TASK 的说明
// 屏蔽Home键
// @Override
// public void onAttachedToWindow() {
// this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
// super.onAttachedToWindow();
// }