What is the difference between SENSOR_DELAY_NORMAL, SENSOR_DELAY_GAME, SENSOR_DELAY_UI and SENSOR_DELAY_FASTEST in Android
Here are some approximations based on tested results:
Accelerometer, SENSOR_DELAY_FASTEST: 18-20 ms Accelerometer, SENSOR_DELAY_GAME: 37-39 ms Accelerometer, SENSOR_DELAY_UI: 85-87 ms Accelerometer, SENSOR_DELAY_NORMAL: 215-230 ms Orientation Sensor, SENSOR_DELAY_FASTEST: 16-17 ms Orientation Sensor, SENSOR_DELAY_GAME: 37-39 ms Orientation Sensor, SENSOR_DELAY_UI: 77 ms Orientation Sensor, SENSOR_DELAY_NORMAL: 224-225 ms
You can also define your own rate, for example 100ms.
int READINGRATE = 100000; // time in us
mSensorManager.registerListener(this, mLinearAccelerometer, READINGRATE);
However the rate is just an approximation, if you need an accurate rate it is better to use a timer.
int SENSOR_DELAY_FASTEST get sensor data as fast as possible int SENSOR_DELAY_GAME rate suitable for games int SENSOR_DELAY_NORMAL rate (default) suitable for screen orientation changes int SENSOR_DELAY_UI rate suitable for the user interface
read this
http://developer.android.com/guide/topics/sensors/sensors_overview.html
SENSOR_DELAY_FASTEST 0 microsecond
SENSOR_DELAY_GAME 20,000 microsecond
SENSOR_DELAY_UI 60,000 microsecond
SENSOR_DELAY_NORMAL 200,000 microseconds(200 milliseconds)