我已经为SmartWatch 1开发了一些应用程序,它们利用了手表的陀螺仪。我终于得到了一台SmartWatch 2来进行开发,但我注意到陀螺仪的响应速度要慢得多。例如,在SmartWatch 1上,似乎每个动作,无论多么轻微,都会被记录下来。然而,在SmartWatch 2上,读数似乎运行在100毫秒的计时器上。下面是我与传感器交互的方式:
private final AccessorySensorEventListener mListener = new AccessorySensorEventListener() {
public void onSensorEvent(AccessorySensorEvent mySensorEvent) {
sensorEvent = mySensorEvent;
float[] values = sensorEvent.getSensorValues();
currentX = values[0];
currentY = values[1];
currentZ = values[2];
}
}我还尝试了不同的变体来注册我的传感器:
mSensor.registerInterruptListener(mListener);--还有--
mSensor.registerListener(mListener, Sensor.SensorRates.SENSOR_DELAY_FASTEST, Sensor.SensorInterruptMode.SENSOR_INTERRUPT_DISABLED);--还有--
mSensor.registerFixedRateListener(mListener, Sensor.SensorRates.SENSOR_DELAY_FASTEST);所有这些似乎都给出了相同的效果。是我在SmartWatch 2上做错了,还是SmartWatch 2中的陀螺仪真的反应不灵敏?
发布于 2014-02-21 07:54:28
SmartWatch 2没有陀螺仪,但有一个加速计。该加速度计的采样率限制为10 The。这就是为什么你每秒只能看到10个样本。我不知道有什么办法能把费率再提高一点。
https://stackoverflow.com/questions/19462625
复制相似问题