我的 Note2 由于 WNRO 而停止提供正确的 GPS 位置信息.
通过记录 NMEA 句子,我可以看到传递了错误的日期,而且每隔几秒/分钟就会丢失 satfix。 Note2 使用 Broadcom 的二进制专有驱动程序 (gpsd) 与芯片交互。为了看看这个问题是否可以解决(就像我在其他一些设备上所做的那样),我需要知道 Android 中负责输出 NMEA 句子的是什么。
NMEA 语句总是由 GPS 芯片和相应驱动程序直接输出到命名管道中,还是由 LocationManager-framework/API 生成 NMEA 语句?
最佳答案
NMEA语句由GPS芯片生成,例如,
通过android.location.GpsStatus.NmeaListener
Used for receiving NMEA sentences from the GPS.
通过实现该接口(interface)并调用
LocationManager#addNmeaListener to receive NMEA data from the GPS engine.
https://developer.android.com/reference/android/location/GpsStatus.NmeaListener
两个引号都表明 NMEA 句子不是由 Android Location API 生成的。
注意:我引用了一个已弃用的接口(interface) (GpsStatus.NmeaListener),因为 Note2 是旧设备并且很可能正在使用它。
关于java - Android LocationManager中NMEA语句来源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58436361/