Java 如何捕捉中央耳机按钮?
我想在按下耳机时捕捉其中央按钮的按下。我已经在互联网上搜索过了,我发现其中一种方法就是这样做:Java 如何捕捉中央耳机按钮?,java,android,Java,Android,我想在按下耳机时捕捉其中央按钮的按下。我已经在互联网上搜索过了,我发现其中一种方法就是这样做: @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_HEADSETHOOK) { if(isRinging) { if(alarm.isActive())
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_HEADSETHOOK) {
if(isRinging) {
if(alarm.isActive())
alarm.cancelAlarm(this);
else{
player.stop();
vibrator.cancel();
}
}
}
return super.onKeyDown(keyCode, event);
}
这个代码可以工作,但我有一个问题:如果我按下耳机的中央按钮,Spotify就会打开。
如何解决问题?返回
true
不是在使用事件。将其添加到if
if keycode==KeyEvent.keycode\u头方法确定我必须返回true?是的,在该代码块的末尾。看看boolean onKeyDown
,它返回一个布尔值,指示它是否“消耗”了事件,即如果为false,它会将该事件传播到其他对象以处理它,如果为true,则事件“完成”,处理完毕。