我在我的设备GT-N7100上进行简单的加速计测试,代码如下:
function getSingleAcceleration() {
intel.xdk.accelerometer.getCurrentAcceleration(
function(evt){
document.getElementById("accelerometerReadings").innerHTML=
'Acceleration X: ' + evt.x + '<br/>' +
'Acceleration Y: ' + evt.y + '<br/>' +
'Acceleration Z: ' + evt.z + '<br/>' +
'Timestamp: ' + evt.timestamp;
}, {adjustForRotation:false});
}
setInterval(getSingleAcceleration,1000)
在intel XDK模拟器上运行良好,但是当我在我的设备上测试它时,所有读数都是0,但时间戳正在更新。
任何想法为什么会发生这种情况?
答案 0 :(得分:1)
请看一下我为此目的整理的演示应用程序(https://github.com/xmnboy/hello-cordova)。它充满了comments和console.log消息,因此您可以更好地了解其中一些API的工作原理。目前它只使用Cordova加速度计API,我希望更新它以使用devicemotion apis和intel xdk apis。
如果这个演示应用程序没有提供任何数字,那么我会说还有其他一些问题,我已经在各种各样的设备上进行了测试,加速度计部分始终有效(不能说其他的方面,但:)。
您可能忘记的一件事是等待设备就绪事件,在底层本机代码初始化之前不会发生任何事情,这就是设备就绪事件发出的信号。