How to test the new app properties without releasing to the app store

How can I test that my app properties (user configurable) stuff is working without publishing to the app store?

Top Replies

All Replies

  • Oh oh, I see, that's the reason why I can't see the setting from my watch. Ok what I have implemented in settings.xml are the setting for Connect IQ app. 

    Fair enough, I'll take a look at that topic to see if I can implement my own on-device settings. Thanks a lot again  for you really good analysis and insights.

  • Here's a sample I posted with both type of settings.

    https://forums.garmin.com/developer/connect-iq/f/discussion/349473/simple-example-wf-that-shows-a-bunch-of-things

    With on device settings, you can select if you want a leading zero for hours less than 10

    In the sim, you get to it with Settings>Trigger App Settings.

    It also has traditional app-settings, where you can pick colors.  In the sim, you use file>edit persistent storage>edit application.properties data.  This is using the xml stuff..

    The reason "app-settings" only works for things installed from the store, is that when you build an iq file, it contains a json file for those settings, and the mobile app has to get this from the app store

  • Thanks, Jim, for sharing the sample. It has a bunch of useful code and features I hadn't seen before, like Complications. The on-device settings will be really useful to me, and I'll analyze the whole code.

    I understand now that "app-settings" work only for store-installed apps because the IQ file includes a JSON settings file that the mobile app fetches from the store.

    Br,

    /Juan

  • , here is the thing, I'm currently have properties like for instance the one below:

    <properties>
        <property id="Theme" type="number">0</property>
        <property id="DateFormat" type="number">1</property>
    </properties>


    To access to those props, I'm doing it like: Properties.getValue("Theme") as Number

    Now well, in your code sample, the on-device setting implemenmtation gets the value using Application.Storage like: 

    Application.Storage.setValue("Theme", themeValue);
    Application.Storage.getValue("Theme");

    So in my case to maintain consistency between user settings in Garmin Connect Mobile/Garmin Express and on-device settings, and to retrieve settings using Properties.getValue("Theme") as Number, should I use
    Application.Properties.setValue(key, value) ?

    Is this the correct approach?
  • You can have the same settings in both places, and then use Application.Properties for on device settings.

    For me, I generally have on device settings or app-settings, but not both.

  • Ok fair enough, probably having only app-settings is enough. I'll decide what to do. Thanks.

  • If you have the memory available, I'd go with on device settings vs app-settings.  It makes your watch face similar to native watch faces, and you can test it with a side load.

    My newest watch faces only have on device settings.