precisão aleatória em SensorEvent.accuracy

a maioria das pessoas não se preocupa muito com a precisão dos dados do sensor relatados, mas para a empresa em que trabalho essas informações são cruciais. no Nexus 5 e no Galaxy S4 (e possivelmente alguns outros dispositivos), notamos que o valor armazenado no SensorEvent (fornecido via SensorEventListener.onSensorChanged ) é aparentemente aleatório (variando de -100 a +100, em vez de segurar um dos SensorManager.SENSOR_STATUS_ * constantes.

vimos isso acontecer apenas para sensores do tipo
Sensor.TYPE_ROTATION_VECTOR

isso foi relatado e corrigido pelo Google para pirulito Android: https://code.google.com/p/android-developer-preview/issues/detail?id=1453

A solução alternativa para versões mais antigas do Android é usar apenas a precisão fornecida por SensorEventListener.onAccuracyChanged , que sempre relata a precisão correta até o momento.