Android - 在什么情况下会触发 onAccuracyChanged()?

标签 android accelerometer

我正在研究 Android API 并遇到了 onAccuracyChanged 方法。

在 StackOverflow 上进行了 Google 和搜索,但我仍然不明白在什么情况下传感器的精度可能会发生变化。

我尝试在下面的线程的答案中实现代码: onAccuracyChanged, why?

测试这个,我不知道如何触发这个方法。即使它可能在任何情况下都没有用。在界面中提供此功能一定是有原因的。

出于好奇。有谁知道我如何触发此调用?

最佳答案

有时需要校准的移动设备上的传感器示例是指南针。

因此,您可以通过试验传感器类型 TYPE_MAGNETIC_FIELD 来观察精度变化事件。

您收到的结果将来自此列表:

  1. SENSOR_STATUS_ACCURACY_HIGH 该传感器正在以最高精度报告数据
  2. SENSOR_STATUS_ACCURACY_LOW 此传感器报告的数据精度较低,需要根据环境进行校准
  3. SENSOR_STATUS_ACCURACY_MEDIUM 该传感器报告的数据具有平均准确度,根据环境进行校准可能会改善读数
  4. SENSOR_STATUS_NO_CONTACT 此传感器返回的值不可信任,因为传感器与其测量对象没有接触(例如,心率监测器未与用户接触)。
  5. SENSOR_STATUS_UNRELIABLE

因此,您可以看到状态反射(reflect)传感器要么表现良好、需要校准,要么就是不工作。

关于Android - 在什么情况下会触发 onAccuracyChanged()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39399813/

相关文章:

Android 从 Gallery NullPointerException 中选择图像?

android - Android 上的 Websocket 服务器

ios - 如何检测 iPhone 在 Objective-C 或 Swift 中掉落或向上移动?

ios - 加速度计数据持续波动

java - 方法 updateGames 类中的 GamesActivity 不能为 App

android - 使用 MAT 了解 Android 内存泄漏

java - 如何在同一行打印 2 个 for 循环的结果

javascript - iOS 上的 Devicemotion 事件

python - 在Python中对加速度计数据随时间的变化进行分类