我已经研究了好几天,并提出了这个问题的变体。我一直在简化问题,希望得到答案。我有一个蓝牙遥控器,它发送一个 META-LEFT 的 keyCode 117,它会导致平板电脑进入音乐播放器。这是不可取的,因为它退出了我的应用程序。
作为测试,我插入了以下代码:
public boolean dispatchKeyEvent(KeyEvent e){
return true;
}
这会阻止我的遥控器和平板电脑本身的所有键。平板电脑 BackArrow 被阻止,遥控器和平板电脑上的音量增大和音量减小被阻止(什么都不做)。但是 META_LEFT 正在弹出音乐播放器。它在我的 Galzxy Tab-2 和 Nexus-S 上都执行此操作。两者都是Android 4.0.4
有谁知道如何阻止这种情况发生?如果用户按下这个按钮,应用程序基本上已经崩溃了。
据此, “回归真”;应防止发生任何动作。这是Android错误吗?我错过了什么吗?