我正在使用phonegap AccelListener来获取加速度计读数。我的代码如下:
var acc = [];
var watchId;
function startWatch() {
var options = { frequency: 3000 };
watchID = navigator.accelerometer.watchAcceleration(onSuccess,onError, options);
}
function stopWatch () {
if (watchID) {
navigator.accelerometer.clearWatch(watchID);
watchID = null;
}
}
function onSuccess(acceleration) {
console.log(acceleration);
var element = 'Acceleration X: ' + acceleration.x + '<br />' +
'Acceleration Y: ' + acceleration.y + '<br />' +
'Acceleration Z: ' + acceleration.z + '<br />' +
'Timestamp: ' + acceleration.timestamp + '<br />';
console.log(element);
acc.push(element);
}
function onError() {
alert('onError!');
}
这将给我每3秒的x y z值。我知道加速度计值用于找出设备运动。但有没有办法从这些值计算位置。任何帮助?
答案 0 :(得分:-1)
正如可以在cordova文档here中看到的那样,“加速度计是一种运动传感器,可以检测相对于当前设备方向的运动变化(delta),沿x,y和三维z轴。“因此,加速度计可以为您提供用户手机握持方式的角度。
要获取当前位置,您可以使用cordova提供的Geolocation插件。