Shared memory between Widget and watchface AND no Unique identifier

Former Member
Former Member

Hello,

I am really fan of the capabilities to develop apps on Garmin but 2 limitations give me headache.

There are multi-post on the forum : for RGPD reason, or security reason we have to big limitation :

1. It's impossible to share data between a widget and a watchface

2. its impossible to have an unique identifier of the device (not bound to the App).

=> So even if we communication information by webrequest we can't automatically retrieve a user who use a widget and a watchface.

The user has to make the reconciliation by himself on a companion app. This is sooo unfriendly.

If anyone has a solution, I'll be glad to hear it :)

Olivier

  • Here's the bug report on #1:

    https://forums.garmin.com/developer/connect-iq/i/bug-reports/allow-shared-storage-between-apps

    And for #2, It's based on device as well as app, as if it was only device, every other app on the same device would have the same ID - not just yours

  • Former Member
    Former Member over 5 years ago in reply to jim_m_58

     #1 : Yes, I have seen the post related to the shared memory

     #2 : I would not need the  #1 if  #2 was possible. Because  we don't have access to the SN of the device we can't recognise a user with the same device that use a widget and a watchface... 

  • The device serial number is personally identifiable information, and I have doubts that we would ever expose this.

    Having a device identifier isn't going to sufficient for many users anyway. If they have multiple devices, they'll most likely want to share data between them.. and using the device id isn't going to help.

    I think that if you want to handle multiple apps installs for the same user (multiple apps on the same device, or multiple devices) you are going to need to implement a system to identify your user on the backend anyway. If you're doing this, it doesn't seem like it is a big deal to have the user identify themselves.

    There are lots of applications that do this already using OAuth.

  • Former Member
    Former Member over 4 years ago

    I have not tested yet on real device, but I found and got on an emulator some uniqueIdentifier:

    developer.garmin.com/.../DeviceSettings.html

    Since I also need such an ID for watch identification via webRequest - after switching to physical watch - let's see.

    Probably somebody already checked what is that.

  • That what people are taking about. It's unique for each combination of app and device. That is, each app on a device has its own identifier.

  • The user has to make the reconciliation by himself on a companion app. This is sooo unfriendly.

    In my app, users register on a website they already use regularly.

    My app opens a page on that site to register the device.

    It's easy enough to register. The web site does the reconciliation.

    It's not much of a problem the way it is. And people might want to use different devices anyway.

  • Former Member
    Former Member over 4 years ago in reply to dpawlyk

    Has somebody checked if this uniqueIdentifier is generated from (some hidden) "Watch Id" and (assumption) App UUID every time after App re-installation? Or is it always the same for the same watch and same App UUID.

  • The documentation explicitly says:

    The value is unique for every app, but is stable on a device across uninstall
    and reinstall. Any use of this value for tracking user information must be in
    compliance with international privacy law.

  • This is something that should be part of a next connect IQ SDK release.
    Share data between several applications (Data Field together, Watch faces, widget....) is really something what would bring a better usability:

    • Think about having 2 data fields which are working on 2 screens and sharing data together. (a graph on one page and other the other only a metric)
    • Think about having a widget as summary of data collected by a data field.
    Here should should have a kind of shared storage and not trying to find a hack (through an external shared server for example) to enable this.
  • This has been requested a number of times as far back as 2015, and as a place holder, Brandon created a bug report for it a while back.

    See https://forums.garmin.com/developer/connect-iq/i/bug-reports/allow-shared-storage-between-apps

    See the very top of it.