Bug: CIQ apps without GPs are showing positioning data.

CIQ apps without the GPS active are showing GPS data and maps.  This appears to be a common issue in newly released devices.

Forerunner 255 and 255m fix request, if GPS is off or the positioning permission is not set, there should be no GPS data saved to the activity FIT file.

This bug will increase battery drain.  

Related bug same issue in FR265
https://forums.garmin.com/sports-fitness/running-multisport/f/forerunner-265-series/333176/bug-ciq-apps-without-gps-are-showing-positioning-data

Boxing app does not enable positioning permission and can not enable.   Following photo shows a map and track.  

  • I appreciate you looking in to this, but this is an CIQ Software/Engineering issue, for the stated products lines.  (Venu 2, Venu 3, FR 55, 255, 265, 955 and 965)      

    Please note, This is for a CIQ application and should not have to do with watch systems settings.

    If a CIQ Application does not set the position permission during the build, Position data should not be saved to the FIT FILE.   That is the Garmin bug I stated and you stated yourself in your answers 1, 2 and 3.    

    Dance+ is the example FIT is sent you.  Dance+ does not set position permission during it build, Dance cannot not use positioning method calls(or will crash).  therefore it has no access to positioning data, but the positioning data is still being saved.   

    The FIT file I sent you shows the positioning data is being saved, but should not.

  • I'm almost certain that @Anshul.ConnectIQ is correct here. The Positioning permission controls access to positioning data from the application. Without the permission, the application should not be able to access the Positioning module and any fields related to positioning data should be null when the permission is not present (e.g., Activity.Info.currentLocation).

    The presence or lack of the Positioning permission should have no effect on the data captured by FIT recording. If GPS is enabled when writing FIT data, then the GPS data will be present in the FIT file. That is the way it has always worked.

    That said, it seems that there is some misunderstanding about how we are getting into this situation. It is not fully clear to me at this time, but it *seems* like the actual issue here is that the system is not disabling GPS on app startup as it would have done in the past.

    @Anshul.ConnectIQ is investigating, but I'm sure we'll figure it out.

  • Could this have something to do with the existence of super apps on these models? i.e. Every Connect IQ device app can be launched either from the activity/app launcher or from a glance (provided that the app implements a glance view.)

    I seem to recall several complaints of an issue where opening a CIQ app via glance during a GPS-enabled activity would turn off GPS. If I'm not mistaken, this was a consequence of the fact that the CIQ app launched via glance was acting just like a regular app (in the sense that it would turn off the GPS by default).

    Could it be that the fix for that problem has caused a new problem? i.e. Do we now have the opposite situation that the device app launched as a "normal app" is acting more like a glance (when it comes to *not* turning off the GPS)?

    This wouldn't be the first time that a new bug (or regression) was created when an old bug was squashed. e.g. the behavior of touch on the map page -- when touch is disabled for the activity -- has flip-flopped between a couple of bugs / behavior that's undesirable for different groups of people, before settling into the current status quo where it works just like Fenix -- properly (except for the Map activity itself.)

  • The presence or lack of the Positioning permission should have no effect on the data captured by FIT recording.

    I think the unstated implication is that it's impossible for a CIQ app to turn on GPS (by calling Position.enableLocationEvents() *) if the Positioning permission is absent. In the past, it was understood that if a CIQ app does not turn on GPS, then GPS is off for that app.

    Yeah, I'm just stating the obvious, but I understand what OP meant.

    (* yeah, I realize that, technically, Position.enableLocationEvents doesn't turn the GPS on/off, but that's the effect it's had in the past. And there's no API calls to explicitly enable/disable GPS.)

  • I have a similar problem, for newer watches Forerunner 255 and 55 users are leaving negative reviews because my indoor strength training app is draining the battery because the GPS is active inside and constantly retrying to find a good signal. No such problem exists for my Forerunner 245.

    apps.garmin.com/.../7155f0ae-dcf7-4fb8-b4ec-0a7caab08597

    See attached screenshots from different watches.

    245:    55:


    I do not understand why the following code would enable GPS:

        if ((session == null) || (session.isRecording() == false)) {
            session = ActivityRecording.createSession({       
                    :name=>name,    
                    :sport=>ActivityRecording.SPORT_TRAINING,          
                    :subSport=>ActivityRecording.SUB_SPORT_STRENGTH_TRAINING
            });
            session.start();
            
    I do not request Positioning Permissions, so this would also seem to be a security issue as the watching is leaking user position data without permissions of the user. I believe this may contravene European Data Protection regulations. Especially as this appears to be an issue which Garmin has known about for some time judging by this thread.

    In the meantime is there anything I can do to advise my newer watch users to disable GPS manually??

  • Yes, this is a security issue and causes poor reviews.  As of now there is no solution. 

    My thoughts: this does not happen to all of listed watch users but with only users that have widgets or watchfaces with background processes using Positioning.  I believe the FIT recording process is grabbing Position data when available even though the permission is not used.   A rogue watch face/widget may not be disabling the sensor/positioning properly, but should not matter. 

    I have seen this error in both the VA3 and VA4 but Garmin repaired. 

    Garmin has chosen to move on and leave these bugs.  (I am not sure why)

  • This error is also in the Venu 2 Plus.  I was just doing a strength training workout yesterday with an f3b app that had GPS positioning data turned on. Unnecessary use of battery.

    I do have a watchface with a weather field though. And a weather widget. That would not be that uncommon for a user though!

    Is @Travis.ConnectIQ or @Anshul.ConnectIQ still looking into this issue?

  • This issue should be addressed with the recent fw update, can you share the details of device, fw version and ciq version on which this issue is still happening.

  • I'm not sure about Nightflame, but I am having this problem on a Venu 2 Plus,

    SW Version - 19.05

    Connect IQ - System 7

  • I have asked my users to test again, but most have already given up and uninstalled my app :-(