首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找出指南针传感器是否精度低

找出指南针传感器是否精度低
EN

Stack Overflow用户
提问于 2016-03-01 08:31:29
回答 2查看 828关注 0票数 0

我目前正在我们的Android和iOS应用程序中集成一个指南针视图。正如预期的那样,传感器值并不总是完美的。这并不是什么大问题,但如果传感器不准确,最好警告用户。那么,有没有办法知道传感器的精度是否低呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-01 08:35:48

在Android上,在SensorEventListener中有一个函数onAccuracyChanged(Sensor sensor, int accuracy),您可以在其中检查设备磁强计的准确性。有4个级别的准确性(请参阅SensorManager类):

代码语言:javascript
复制
SENSOR_STATUS_ACCURACY_HIGH = 3 
SENSOR_STATUS_ACCURACY_MEDIUM = 2
SENSOR_STATUS_ACCURACY_LOW = 1 
SENSOR_STATUS_UNRELIABLE = 0

不过,我不知道如何在ios上做到这一点。

此信息也可用于在SensorEvent中接收到的每个onSensorChanged

票数 1
EN

Stack Overflow用户

发布于 2016-03-01 09:02:37

在iOS中,传感器精度随每次更新一起提供。headingAccuracy <0表示值是错误的。如果它> 0,则表示该值与真值之间的最大偏差,并且可以定义一个阈值。

代码语言:javascript
复制
- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading {
    NSLog(@"LocationManager did update Heading with accuracy %g", newHeading.headingAccuracy);
    if(newHeading.headingAccuracy < 0) {
        NSLog(@"Invalid value!");
    } else if(newHeading.headingAccuracy < ACCURACY_THRESHOLD) {
        NSLog(@"Too low Accuracy!");
    } else {
        NSLog(@"Accuracy is good enough to use value");
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35717988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档