每秒获取传感器值

Lau*_*aou 5 android sensor android-sensors

有什么方法可以让我每秒获得传感器读数吗?什么是SENSOR_DELAY_NORMAL费率,以秒为单位?

sm=(SensorManager)getSystemService(SENSOR_SERVICE);
accelerometer=sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sm.registerListener(this, accelerometer, SensorManager.SENSOR_DELAY_NORMAL);
Run Code Online (Sandbox Code Playgroud)

小智 7

谢谢你,它也回答了我的问题,我使用的是1000,看起来价值是微秒.

 SENSOR_DELAY_UI      (60,000 microsecond delay)
 SENSOR_DELAY_FASTEST (0 microsecond delay)
 SENSOR_DELAY_NORMAL) (200,000 microseconds delay)
Run Code Online (Sandbox Code Playgroud)

所以一秒钟我应该使用恒定的1,000,000微秒.


Iva*_*gin 5

SENSOR_DELAY_*指定的延迟仅是建议的延迟,实际结果可能会更快或更慢.如果您每秒只需要一次读取,则可以使用最慢的速率(SENSOR_DELAY_NORMAL),它应该每秒更新大约5次.但是,如果你想每秒做一次,你需要自己的时间.

http://developer.android.com/guide/topics/sensors/sensors_overview.html

  • 看起来你可以设置自API 11以来的绝对值.所以是的,这应该每秒大约开一次.但无论如何,不​​要指望这是非常精确的. (4认同)