2

我目前正在为android..

volume当用户按下 android 手机时我如何捕获关键事件

我正在使用电话间隙...

4

3 回答 3

5

使用以下代码获取关键事件

在现有的 java 类中使用此代码

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    //If volume down key
    if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
        this.loadUrl("javascript:cordova.fireDocumentEvent('volumedownbutton');");
        return true;
    } else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
        this.loadUrl("javascript:cordova.fireDocumentEvent('volumeupbutton');");
        return true;
    } else {
        //return super.onKeyDown(keyCode, event); 
    }
    //return super.onKeyDown(keyCode, event);

    return true;
}

并在您的 html 页面中使用以下内容

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

document.addEventListener("volumedownbutton", volumedownbutton, false);

function    onVolumeUpKeyDown()
{
    alert("Working Up")     
}

function    volumedownbutton()
{
    alert("Working Down")       
}

我从这里得到了这个答案https://stackoverflow.com/questions/9770901/phonegap-event-volumeupbutton-and-volumedownbutton-is-not-working

于 2012-10-17T09:05:29.387 回答
2

如 Phonegap API Docs 中所述,以下代码仅适用于 Blackberry:

document.addEventListener("volumeupbutton", yourCallbackFunction, false);
document.addEventListener("volumedownbutton", yourCallbackFunction, false);

但是检查一下也没有什么坏处。它可能适用于最新的 Phonegap SDK

希望这可以帮助!

于 2012-10-15T06:18:01.840 回答
0

您可以在 PhoneGap 中为音量键按钮添加事件侦听器,如 PhoneGap 文档中所述,如下所示

谢谢

于 2012-10-15T06:13:48.450 回答