Cordova - menubutton-event并没有开火

时间:2016-03-07 15:14:54

标签: javascript android cordova

我正在使用cordova开发Android应用程序。 android 4.4设备与蓝牙遥控器连接。

在文档的帮助下,我能够捕获一些按钮,例如"音量增加" -key:

document.addEventListener("volumeupbutton", onVolumeUpKeyDown, false);

function onVolumeUpKeyDown() {
    console.log("Volume up pressed");
}

根据cordova-documentation,还有一些其他可用密钥的Eventlistener:

  • 后退按钮
  • 菜单按钮
  • 搜索按钮
  • startcallbutton
  • endcallbutton
  • volumedownbutton
  • volumeupbutton

我希望用户在按下遥控器菜单按钮时进入我的应用程序的设置页面,但不幸的是这个按钮对我不起作用。 Here is the description on the cordova site和示例代码:

document.addEventListener("menubutton", onMenuKeyDown, false);

function onMenuKeyDown() {
  console.log("Menu pressed");
}

我找到了一个名为" keytest"的APK,它显示了按键。这个应用程序识别:

keyCode=KEYCODE_MENU

仍然,科尔多瓦没有解雇这个事件......为什么?

Screenshot Keytest

1 个答案:

答案 0 :(得分:8)

没有记录,但您必须覆盖菜单按钮才能使其正常工作

添加此行

navigator.app.overrideButton("menubutton", true);

然后你可以使用

document.addEventListener("menubutton", yourCallbackFunction, false);