我正在使用NMEAListener测试一个应用程序,并注意到我需要调用LocationManager.requestLocationUpdates使其接收字符串。因此,要使用NMEAListener,我需要先注册常规的Location侦听器。我在文档中没有发现应该采用这种方法。如果仅注册NMEAListener,则不会接收到任何字符串(并且永远不会显示顶部系统栏中的GPS图标)。似乎该监听器未打开GPS。

您认为这是一个错误吗?

注意:我正在使用2.3 Gingerbread。



更新
这些问题可能与以下方面有关:
Issue 7321
Issue 15500

最佳答案

NmeaListener(到2019年将有很长的历史)似乎只是请求GPS提供商位置更新的副产品。如果您使用NETWORK_PROVIDER进行LocationManager.requestLocationUpdates,则您也不会收到nmea语句。

我认为GPS芯片仅发出NMEA语句,而android系统将其转换为Location类数据,并将其完全未经计算地推送给NmeaListener。另一种方法是不可用的:使用GSM / WLAN数据计算经纬度,然后转换为“伪” NMEA语句是不可行的。

关于android - NMEAListener不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9359875/

10-10 01:57