Hello everyone. I need a clarification with Core Location, please help.
How exactly is GPS data passed from external GPS source that is connected via Bluetooth? After some googling I found two separate points:
- Core Location (CLLocationManager) is responsible only for internal GPS receiver data. For external BT sources I need to use EAAccessory and read NMEA protocol.
- When I connect an external source, internal GPS is switched off instantly and CLLocationManager starts providing its data. So it must work OK.
Thing is, I don't have an external source to test it and I'm not that experienced in BT.
I have a report that people cannot use external GPS source with my app (I use Core Location only). Though I also have an info that all navigation apps support external GPS source. So they've already solved this?
Or maybe I should check Core Bluetooth out for this?
My question is kind of close to this one:
https://forums.developer.apple.com/thread/69717?q=gps
Maybe MFi really has a relation to that? And something can depend on GPS device being MFi or being not MFi?
Or this one:
https://forums.developer.apple.com/message/31679#31679
Seems much closer to my topic. So if I got it right, all MFi-supported external GPS data sources should work as is via Core Location?
If that's true, is all CLLocation data valid there (when using external source)? Or just altitude and position?
Having the same question. The device should be able to use GPS data from any device with proper software or Protocols.