我正在尝试开发一个可以在点击电源按钮后执行某项操作的应用。
我有一个捕获onClick of Power按钮的代码,但它似乎不起作用。屏幕会锁定。
现在我试图捕捉电源按钮的onLongPress,防止出现“关闭电源”选项。有关如何做到这一点的任何建议吗?
提前感谢。
答案 0 :(得分:12)
这肯定会阻止长按按钮。
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if(!hasFocus) {
Intent closeDialog = new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
sendBroadcast(closeDialog);
}
}
答案 1 :(得分:1)
嗨,你只是试着报道这个事件而不是Kartik指出你只需要玩onKeyDown事件。
但形成我对你的问题的理解,你实际上想要阻止电源按钮的行为,而这是无法做到的。 就像按下主页按钮一样,无法阻止Android中的某些事件,以避免人们拥有无法退出的应用程序。
答案 2 :(得分:0)
您可以强制屏幕保持开启,如http://developer.android.com/reference/android/os/PowerManager.html
中所述这可能会耗尽CPU并弄乱人们对按下电源按钮时会发生什么的期望,所以要小心。