我正在尝试使用phonegap api文档中的example来尝试检测音量增大和减小按钮按下事件。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script type="text/javascript" charset="utf-8" src="cordova-1.8.1.js"></script>
<script type="text/javascript" charset="utf-8">
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
document.addEventListener("volumedownbutton", onVolumeDownKeyDown, false);
console.log("DeviceReady");
}
function onVolumeDownKeyDown() {
console.log("onVolumeDownKeyDown");
}
</script>
</head>
<body onload="onLoad()">
</body>
</html>
当我使用我的iphone运行它时,我只看到第一个日志DeviceReady
但是当我按下iphone上的音量按钮时,我看不到第二个日志。
您知道我的手机是否存在问题,或者我的xCode项目中是否存在问题? (缺少插件或配置)。
我怀疑应用程序BiteSMS
,因为它修改了Volume Change弹出窗口行为(它标记为“按下以使用BiteSMS”),但即使在我删除它之后仍然没有。
答案 0 :(得分:1)
我不知道,当你提出这个问题时(2012年12月6日),但是目前(2013年7月,PhoneGap 3.0.0),PhoneGap API documentation正确地说,PhoneGap Bootstrap demo在 BlackBerry WebWorks(OS 5.0及更高版本)上支持<}>仅{<1}},volumedownbutton
和volumeupbutton
事件(仅限 <事件<} / em>的
所以,我非常感到惊讶,你不会在iOS / iPhone上被解雇! :
我没有机会在iOS上测试我的{{3}}应用程序(包括PhoneGap触发的所有事件的示例处理程序),但我在我的Android设备上测试过(两个用于Android 2.x,一个用于Android 4.2)并且它们都不支持(触发)这四个事件。最后两个 - endcallbutton
和startcallbutton
- 当然,因为大多数基于Android的设备没有开始/结束呼叫按钮。至于前两个 - endcallbutton
和startcallbutton
事件 - 这些也不受支持。您可以在PhoneGap应用程序中更改音量,并且看到系统音量栏发生变化,但PhoneGap应用程序根本不会做出反应。