Background Services Conflict

Is there a known issue in which more than one CIQ app, widget or data field that uses background services (say, to retrieve a device's temperature) causes a conflct? For example, if you have a data field installed (even if it isn't currently active on a screen), that uses background services... that it can cause an application that also uses background processing to hang.

I don't know if this is a basic limitation or flaw in the CIQ framework, or if the hanging applicaiton does not handle BG processing correctly.

Thanks!

  • I have multiple things with background processes running most of the time (say a widget and a WF).  It will only run one background at a time, but having two ready to run at the exact same time is probably unlikely anyway.

    Are you seeing this hang on a specific device?  What Firmware?

  • Hi Jim - this is feedback from a user of a popular CIQ app called XERT. They are blaming Garmin/CIQ.

    ===

    It will break XERT. XERT will connect to the server and then at 5 minutes later when XERT wants to connect to the server again, the XERT data field gives an error and the workout player just plain stops until you manually reconnect. Even if the data field that uses BG services is not on one of your data screens (meaning it is installed on the Garmin device, i.e. My Edge2 or SPH Graph) the XERT data fields and workout player (a CIQ app) do not work. This is the case for the 1000 and 1030 models at the least. I have gone over this with XERT support for the last 10 months.

     XERT says it is CIQ server that cannot handle more than one background services call.

  • All I can say is I've never had a problem.  I wonder if anyone other than XERT has seen this.

    For DFs with a background process, I do delete the Temporal event when the DF exits so can't speak for that, but with a widget (multiple at times) and the active WF doing a background process, never had an issue.

  • i have several datafields running at the same time on multiple devices that run background processes and have never seen this.  Nor have I heard of it from any of my customers that run my datafields (often more than one at once).

  • The issue occurs when a Background Service fires in a datafield and there is a running CIQ app that is send data packets out every second.  This forces all ANT connections to get dropped.  Known issue with Garmin.  No solution for over a year.

  • If a CIQ device app is running, background processes for other things don't run.  It's a resource issue.  As soon as the device app terminates, the backgrounds run.

    Background processes will run if a native activity (like "run") is being used though

  • In theory.  If the datafields that run BS are removed, there aren't any problems so the BS are still being run if they are loaded in the current Activity Profile when the app is launched.

  • When you exit an activity with a CIQ data field with backgrounding, do you instruct the background to stop running?  (deleteTemporalEvent for example).

    I always do that in data fields, as having the background run when the DF isn't in use isn't really needed.  Start temporal events when the DF starts, delete temporal events when it exits.

  • It's not our datafields.  Their BS only run while activities are being recorded.  The problem is from other datafields that are installed that continuously run BS.

  • Yeah - seems the Garmin RTOS should handle the deactivation of BS in non-active DFs.