试图在Phonegap中调用navigator.accelerometer

时间:2013-09-09 14:37:14

标签: javascript ios cordova accelerometer navigator

好的,所以我现在通过示例来学习 Phongap。我有大约7-8个月的javascript曝光/体验,但我对xCode和Phonegap完全不熟悉(约一个半星期)。我现在觉得这不会影响我的问题。

我不想出去问,“navigator.accelerometer存在吗?”,但这几乎就像是现在的问题。我知道那确实存在,因为它在很多例子中被称为无处不在,但是当我真正试图调用它时,我会得到关于它未定义的错误。我这样做,但无济于事:

var foo = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);

当我致电navigator.accelerometer时,我得到“'未定义'不是一个对象”。

我编译时安装并运行了Phonegap,所以我对这个问题没有更多的想法。我假设这不是一个弃用的属性或语法,并且基于我在W3C学校看到的内容,我得出结论(可能是无知的)accelerometer是Phonegap添加到navigator的属性。非常感谢帮助。感谢

2 个答案:

答案 0 :(得分:3)

转到config.xml并添加

<plugin name="Accelerometer" value="CDVAccelerometer" />
<plugins>部分中的

。或者,如果您使用cordova 3.0+

<feature name="Accelerometer">
      <param name="ios-package" value="CDVAccelerometer" />
</feature>

答案 1 :(得分:0)

萨拉姆。

首先绑定enter code here事件并在onDeviceReady函数中调用您的方法:

document.addEventListener('deviceready', onDeviceReady, false);
function onDeviceReady() {
    // NOTE: implement onSuccess and onError callback functions
    var foo = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
}