Hello,
We have developed a Garmin watch app for our companion mobile application, SityTrail - https://www.sitytrail.com - which is designed for outdoor activities and allows users to follow trails: apps.garmin.com/.../ab0b2f46-4909-4abb-a59d-6da66607f52c.
However, we have encountered an issue: we are unable to display the topographic map image (for the current location) on the Garmin watch app, as we do on other platforms like Wear OS and Apple Watch. On these platforms, the smartphone app transfers a small image of the map to the watch in JPEG/PNG format via BLE, and the watch decodes and displays it using the platform’s methods.
From what I’ve seen in previous forum posts, it appears that this approach is not possible on the Garmin platform, as there doesn’t seem to be a function for decoding a Bitmap on the watch side:
• forums.garmin.com/.../transfer-a-bitmap
• forums.garmin.com/.../sending-an-image-to-watch-app-from-phone-companion-app
Since these posts are quite old (9 years ago), I would like to know if this is still the case.
Is this limitation due to a technical restriction, or is it an intentional design decision by Garmin?
Is there any solution for displaying a JPEG/PNG image on a Garmin watch app other than embedding it in the application resources (which isn’t feasible for us) or loading it from a URL via Garmin servers using Communications.makeImageRequest()? The latter method requires a mobile Internet connection, which is not always available during outdoor activities, especially in mountainous regions or areas with poor network coverage.
This is particularly unfortunate, as displaying the topographic map would be very beneficial for our customers. As an example, here are some demo images generated with a static JPEG image included in the app’s resources:
Additionally, we’ve noticed that the makeImageRequest() function seems to be quite slow in retrieving the image (e.g., it takes 5 to 15 seconds to download a 60 KB JPEG image on a Forerunner 255 Music watch connected to a recent Android phone with a high-quality Internet connection). Is this expected behavior?
Thank you in advance for your assistance.
Best regards,