Updating settings form "Connect" or "Garmin express"

Former Member
Former Member
Hi

I've added some setting to my app. :
- I've added the setting ressources in a properties.xml file
- added calls in the application to get these properties

Everything is OK within Eclipse/App setting editor but the settings don't appear neither in "Connect" (iPhone) or "Garmin express".

Is there something special to "activate" settings editing in these applications ?

Thanks
  • You can't use settings for an app until it's in the app store.

    See point 7 in the New developer FAQ:
    https://forums.garmin.com/showthread.php?339891-New-Developer-FAQ

    (if you include "DO NOT APPROVE" in the app name, you can keep testing until your ready, and then remove the 'DO NOT APPROVE")

    For App settings, also check out point 10 in the FAQ.
  • Former Member
    Former Member
    Has your app been submitted to the CIQ store yet? Being able to test app settings with Connect Mobile and Express is dependent on having the application submitted to the store. This is covered in a little bit more detail in section 7 of the New Developer FAQ thread posted above.
  • Former Member
    Former Member
    Hi

    yes I sumitted it to the store with a "DO NOT APPROVE" title and installed it on the watch from the store.

    Regards

    Here is my properties.xml file :

    <resources>
    <properties>
    <property id="correction_prop" type="float">0.0</property>
    </properties>

    <strings>
    <string id="correction_title">Correction</string>
    </strings>

    <settings>
    <setting propertyKey="@Properties.correction_prop" title="@Strings.correction_title">
    <settingConfig type="numeric" />
    </setting>
    </settings>
    </resources>
  • Did you still have a sideload on the watch? If so delete that, delete what you had from the store, and re-install.
  • Former Member
    Former Member
    Curp zacapu

    Hi

    I removed the .iq from my computer, regenerated it then resubmitted it and it now works.
    Strange..
  • That DO NOT APPROVE thing only works for new submissions I assume?

    I added user settings to my watchface only in later versions, causing many crashes. But changing the title to 'do no approve' didn't help in any way. Is there a way to release test updates as well?
  • That DO NOT APPROVE thing only works for new submissions I assume?

    Yes.

    I added user settings to my watchface only in later versions, causing many crashes. But changing the title to 'do no approve' didn't help in any way. Is there a way to release test updates as well?

    If you've broken an app that is publicly available, you should need to sync your code back to a known working state (you are using revision control for your source code, right), build and upload the new prg. This way customers won't have to put up with broken code.

    To do your testing, make a copy of the manifest.xml file and save it somewhere safe (manifest.xml.public). Generate a new UUID and insert it into the application:id field in the manifest.xml file. Make the code changes you want to test, build a prg and upload it to the store with the DO NOT APPROVE tag. Since you're using a unique UUID, the app store thinks it is a totally new app, and you can update it independently from the one users are downloading and using. Once everything is working like you want, make a backup of the manifest.xml (manifest.xml.private), restore the original file, rebuild, and upload to the store.. this will update the public app in the app store and your users will see the features you've added.

    You can repeat this process as much as you want, just be sure to keep the public and test manifest.xml files straight.

    Travis
  • Yes.


    If you've broken an app that is publicly available, you should need to sync your code back to a known working state (you are using revision control for your source code, right), build and upload the new prg. This way customers won't have to put up with broken code.

    To do your testing, make a copy of the manifest.xml file and save it somewhere safe (manifest.xml.public). Generate a new UUID and insert it into the application:id field in the manifest.xml file. Make the code changes you want to test, build a prg and upload it to the store with the DO NOT APPROVE tag. Since you're using a unique UUID, the app store thinks it is a totally new app, and you can update it independently from the one users are downloading and using. Once everything is working like you want, make a backup of the manifest.xml (manifest.xml.private), restore the original file, rebuild, and upload to the store.. this will update the public app in the app store and your users will see the features you've added.

    You can repeat this process as much as you want, just be sure to keep the public and test manifest.xml files straight.

    Travis


    Nice trick!

    I now created a dev-watchface project and uploaded it with the DO NOT APPROVE part in the title. I can now use that uid for my other watchfaces (and maybe any project) which I would like to test, seems to work just fine...

    Guess it's smart to make a widget, watchface and app version as those are not interchangable. But very nice! Thanks for the tip.
  • Last I tried, if you had something in the store that of one app type, you couldn't load a different app type in it's place, even with the same manifest ID, and as the app store checks for duplicate manifest if you have a few "do not approve" apps for the different types, they also must have unique manifest IDs.
  • Last I tried, if you had something in the store that of one app type, you couldn't load a different app type in it's place, even with the same manifest ID, and as the app store checks for duplicate manifest if you have a few "do not approve" apps for the different types, they also must have unique manifest IDs.


    Yeah, that makes sense... No problem though, guess when the need is there I'll just make a widget and app version of them as well, all with their unique ids, and then just the ones needed for the specific project I am working on at that time.