android 屏蔽home按键 高通8937
1.WindowManager.java里面添加:
public static final int PRIVATE_FLAG_HOMEKEY_DISPATCHED =0x80000000;
//在代码中定义这个值,因为实际只认值:0x80000000
2. 需要屏蔽home按键的activity里面修改:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addPrivateFlags(WindowManager.LayoutParams.PRIVATE_FLAG_HOMEKEY_DISPATCHED);
//关键代码,注意上句必须写在setContentView上面。
setContentView(R.layout.main);
}
3.需要在PhoneWindowManager.java里面interceptKeyBeforeDispatching进行判断
if (keyCode == KeyEvent.KEYCODE_HOME) {
.....
扫描二维码关注公众号,回复:
5487746 查看本文章
//需要确认attrs.privateFlags里面是否已经或了PRIVATE_FLAG_HOMEKEY_DISPATCHED标记。
if((attrs.privateFlags & PRIVATE_FLAG_HOMEKEY_DISPATCHED) != 0){
}
.....
}