I have questions on how apps can control the location info they get because I am confused even when reading the API docs.
1. What happens if I use the old-school method?
Position.enableLocationEvents(Position.LOCATION_ONE_SHOT, method(:onPosition));
Will that mean GPS regardless of watch settings? What if in the watch settings, Ultratrac has been selected - that would mean that the frequency of updates would be reduced to one minute? Or what if in the watch settings, GPS+GLONASS is used? Would using this basically downgrade to GPS vs the GPS+GLONASS set in the watch settings?
My guess is that it would use whatever is in the watch settings (and actually looking at the USAGE doc of GliderSK here (https://github.com/cedric-dufour/connectiq-app-glidersk/blob/master/USAGE last section), this seems to imply that this method would use whatever was last used in a Garmin activity.
2. What happens when using the newer 3.2.0+ method?
Position.enableLocationEvents({
:acquisitionType => Position.LOCATION_CONTINUOUS,
:constellations => [ Position.CONSTELLATION_GPS, Position.CONSTELLATION_GALILEO ]
},
method(:onPosition)
);
So here I can control a list of constellations that can be used. In this example (straight from the API doc), the watch would effectively do a background reconciliation between GPS and GALILEO, correct? Could I even select all three methods (GPS, GLONASS, GALILEO) and assume the watch will reconcile the three in the background/transparently?
But same question as before, does that completely override user settings? What if the user has "Ultratrac" in the settings? I assume that would limit the updates to once a minute, regardless of what constellations are used. Is that correct?
3. What if a user has a Fenix 7 or Epix Gen 2 and has "All systems+multi-band" in the settings?
Would then using the older method be more precise than using the new method (as hopefully the old method doesn't override the watch settings)? Since the 3.2.0+ method would basically override the more accurate positioning method in the watch settings?
Sorry I know this is a lot of questions, and I apologize if there was some documentation that detailed this that I missed!