chris
chris

Reputation: 600

Android sensor accuracy

I made an android app that relies heavily on very accurate sensor data (magnetometer, gravitymeter and accelerometer). To achieve this I validate all these device sensors periodically for highest quality of service by checking the sensor status for SENSOR_STATUS_ACCURACY_HIGH. If one of these sensors doesn't have this status I show a calibration screen until the high accuracy can be delivered. On my own device this is working perfectly fine, but I get a lot of app reviews from people who can't get around my calibration screen. My question is, can I rely that every android device is per se capable of delivering SENSOR_STATUS_ACCURACY_HIGH or do I have to lower the minimum accuracy? If so, how is this status even defined cross devices?

Upvotes: 2

Views: 1110

Answers (1)

Gabe Sechan
Gabe Sechan

Reputation: 93559

No, you can't. And even if you could, its possible for the sensor to be broken and returning the high status incorrectly. And you don't know if OEM A and OEM B have the same definition of high. In the end, you're trusting the individual hardware drivers for each device, and hoping all of them are both acting in good faith and had the same definition of "high accuracy". Neither of which are really reliable.

Upvotes: 2

Related Questions