makeWebRequest - prerequisits

For my apps I recently implemented synchronization with my server - both trainings data and license are now stored and retrieved from/to my server using Communications.makeWebRequest(). It works great - hundreds of users have already succesfully connected to the server and  tens of indivitual synchronizations are registeded each day. 

However tooday I recieved a message from one of the users that he is not able to get his watch unlocked:

- My server does not recieve any requests from users deviceS (tried on Fenix8 and Fenix6).

- User has his bluetooth on with internet connection on his mobile - he is able to download and install the apps, change app settings in Garmin IQ, synchronize the  watch etc.

- User downloaded the latest app version - there is internet connection on the list of permissions when checked it in Garmin IQ of my app

- User does not have any firewall + it is his private phone

I was able to grant him access offline however I'm wondering what can be other reasons he is not able to make any requests over the internet makeWebRequest()? I need to be able to troubleshoot it in the future as I plan to move to the fully automated license handling by me server. 


Thank you in advance  for any hints

  • Well user claims his bluetooth is on... what can i do other than monitor if there are any similiar reports  in the future.

    Also I've found in one of the past threads (forums.garmin.com/.../background-process-web-request-issue-with-ios12 the following suggestion:

    "A common mistake that someone can make when moving from Android to iOS, is to forget that the Connect app must be actually running on the iOS device.
    This is in contrast with Android where the Connect app doesn't have to be open all the time.
    On iOS the app can be backgrounded, that also works. As long as it is not completely killed/closed."

    - this is from 6years ago, do you think it is still valid comment and the user has to keep his Garmin Connect running while app on the watch tries to make a web request?

  • - this is from 6years ago, do you think it is still valid comment and the user has to keep his Garmin Connect running while app on the watch tries to make a web request?

    Yes (for iOS). That’s why many apps (such as Spotify) will explicitly ask the user to open Connect on their phone (or words to that effect) if a connection is unavailable (presumably when makeWebRequest() returns -104 or when DeviceSettings.connectionAvailable is false.)

  • It is what it is then..I double checked with the user and he was able to makeWebRequest with no issues once Garmin Connect was on.

    I wanted to reduce number of users reporting  me  issues with unlocking the apps by automatically downloading the license info from my server but as it turns out it will generate another waves of questions from apple users for sure. I will have to address it with some prompt or watch message.