我需要为我的应用程序构建指南针。
从阅读文档看来,有两种合理的方法可以做到这一点:
- Sensor.TYPE_ORIENTATION 方法:这是最简单的方法。问题在于它不准确。当我将我的读数与 Snaptic Compass 进行比较时,它大约相差 10-15 度,这对我来说是不可接受的。
- Sensor.TYPE_ACCELEROMETER、Sensor.TYPE_MAGNETIC_FIELD 和 getRotationMatrix() 与 remapCoordinateSystem() 和 getOrientation() 方法一起使用:文档说这“通常更准确”。问题是无论我向听众注册的延迟如何,即使设备静止在平面上,指南针也会发疯。
任何解决此问题的建议将不胜感激。