我想知道它是否可以覆盖android中的电源按钮?
我在Stack Overflow中阅读了很多帖子,有些人说这是可能的,有些人说它不是(example)。
我想要实现的是 - 当用户使用我的应用时,他需要按下锁定/电源按钮5次以锁定屏幕。我不想仅仅使用锁定功能来覆盖swtich off功能。
无论如何都要获取电源按钮回调?
我尝试了WakeLock并禁用了键盘锁,但它并没有为我的目的服务。
我在以下评论部分发布的Shink链接中尝试了以下代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {
// do what you want with the power button
Toast.makeText(getApplicationContext(), "down", Toast.LENGTH_LONG).show();
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_POWER) {
// do what you want with the power button
Toast.makeText(getApplicationContext(), "up", Toast.LENGTH_LONG).show();
return true;
}
return super.onKeyUp(keyCode, event);
}
仅在按住电源按钮2秒钟时才会显示toast msg。那是为什么?
是否可以覆盖锁定屏幕的电源按钮功能?或者还有其他方法可以实现我想要做的事情吗?
答案 0 :(得分:0)
出于安全目的,您无法禁用POWER_BUTTON。它以广播/用户模式运行...... :(