我正在使用NMEAListener
测试应用,并注意到我需要调用LocationManager.requestLocationUpdates
来接收字符串。所以要使用NMEAListener
我需要先注册常规的Location侦听器。我没有在文档中的任何地方发现应该这样做。如果我只注册NMEAListener,则不会收到任何字符串(并且从不显示顶部系统栏中的GPS图标)。似乎该听众没有打开GPS。
你认为这是一个错误吗?
注意:我正在使用2.3姜饼。
UPDATE
这些问题可能是相关的:
Issue 7321
Issue 15500
答案 0 :(得分:0)
NmeaListener(到2019年将不再使用)似乎只是请求GPS提供商位置更新的副产品。如果您使用NETWORK_PROVIDER进行LocationManager.requestLocationUpdates,则您也不会收到nmea句子。
我认为GPS芯片仅输出NMEA语句,而android系统将其转换为Location类数据,并将其完全未经计算地推送给NmeaListener。另一种方法是不可用:使用GSM / WLAN数据计算经纬度,然后将其转换为“伪” NMEA语句是没有完成的。