我一直在开发位置跟踪应用程序并主要在运行 Android 1.6 的 HTC G1 上对其进行测试。我发现有一定的时间间隔——大约 1-2 小时——当记录的 GPS 位置变得非常不稳定时:我最终得到的点看起来像是在我的实际位置周围随机分布,而不是紧密地聚集在一起在通常的 10-50 米范围内(我使用最小精度来记录这些位置),它们以大约 1-5 公里的半径散开——即使这些位置中的每一个都带有报告精度低于 50 米。
就好像在这些时期实际位置准确度在膨胀,但报告的准确度保持不变。这种情况比较少见,当它发生时只持续几个小时,之后一切又恢复正常。因为它很少见,而且我通常也在修补应用程序的过程中,所以我很难排除这是由我的代码中的错误引起的可能性。
有没有其他人经历过这个?是否存在可能导致它的已知硬件或固件问题?如果是这样,是否有人有一个很好的方法可以在问题发生时检测到问题并纠正报告的准确度值?我假设一种选择是依赖 NMEA 语句,但我希望能够在 Android API 级别 4 上运行该应用程序,并且我看到 GpsStatus.NmeaListener 需要 5 或更高版本。
我真的很感激任何建议。