Ticket Created
over 3 years ago

CA-83342

Transferred

Communication Module doesn't work properly when Garmin Connect looses internet

Hi,

when Garmin Connect Android app looses internet access, CIQ apps no longer gets proper responses from local HTTP server when getting binary data (either via makeImageRequest or  makeWebRequest with HTTP_RESPONSE_CONTENT_TYPE_FIT). Instead they get response with UNKNOWN_ERROR or strangely some cached data from "similar" older request when internet was available.

Loosing internet access can of course happen when 
smartphone without wifi looses signal to cellular network or is switched to fly-mode (without turning-off BLE) - so this can be easily simulated.  

Seems like this was introduced in some recent Garmin Connect app update - this worked properly before.

I was able to confirm that this issue is on Garmin Connect side which provide BLE link between phone and Garmin and not elsewhere (http server for example). JSON requests seems to work properly under same conditions. 

This affect quite a lot apps in the CIQ store including 2020 CIQ Awards winner Locus Map. 

Parents
  • I wonder if there is a way to import FIT/GPX via makeWebRequest without active internet connection in 2021?

    I often ride in areas with poor network coverage where it is almost impossible to pre-load one single track for the whole ride. So my workaround became gexporter/gimporter as it allows to load courses mid-ride without painful GCM experience (which in fact is useless when your phone doesn't have access to garmin servers).


    So I wonder why makeWebRequest doesn't properly work for HTTP_RESPONSE_CONTENT_TYPE_FIT/HTTP_RESPONSE_CONTENT_TYPE_GPX response types when GCM doesn't have connection to internet? Does GCM applies some server processing for GPX/FIT files?

Comment
  • I wonder if there is a way to import FIT/GPX via makeWebRequest without active internet connection in 2021?

    I often ride in areas with poor network coverage where it is almost impossible to pre-load one single track for the whole ride. So my workaround became gexporter/gimporter as it allows to load courses mid-ride without painful GCM experience (which in fact is useless when your phone doesn't have access to garmin servers).


    So I wonder why makeWebRequest doesn't properly work for HTTP_RESPONSE_CONTENT_TYPE_FIT/HTTP_RESPONSE_CONTENT_TYPE_GPX response types when GCM doesn't have connection to internet? Does GCM applies some server processing for GPX/FIT files?

Children
No Data