I wanted to share my thoughts with the community, though. Take it as a constructive critic, Garmin staff.
IMHO, Garmin Connect IQ lacks many basic functionalities that the Garmin Team should take into account in future updates.
- Read/Write file support. I have a device with 8GB of memory and I cannot read/write data from it?
https://forums.garmin.com/showthread.php?341361-Read-Write-text-file
Someone pointed out that I could store the data somewhere and offer it via web service + JSON, but if a user is not online, or comms fail, it's useless. Read/write access is a must. - Reliable HTTP connection without Garmin Connect and/or JSON dependencies. Another 'must'. Not everybody can develop a web service that gets the information from some URL and then translates it back to JSON format for the Garmin device. Even doing so, you might find errors that you cannot debug because they are the frameworks fault. As happened to me here:
https://forums.garmin.com/showthread.php?341207-weather-sample-app - Unique Device ID. I might need to store the Device ID somewhere (to avoid a user to having to identify himself manually, for example) to do many things such as storing persistently device's preferences, or just checking if a device is in a list (subscriptors or premium users).
- Backwards compatibility. I see many complaints on apps working wrongly in v.1.2.2 when they where OK in v.1.2.0. This backwards compatibility issues should never happen, and I think that they happen because Garmin staff doesn't use this SDK. At least they should have a set of 'test-apps' (more complex than the default samples provided) and have them recompiled with this new SDK before releasing it.
https://forums.garmin.com/showthread.php?341352-Issues-upgrading-an-App - This is not an issue, but a point related to the previous one. I think Garmin should use this same SDK to develop their apps... That way they would see the real needs of the developers.
- Logs. The developer should have the ability to create a log/trace, so that if a user reports a problem, the developer can ask for the log file inmediatly. Even if this log file is size-limited by Garmin would be OK, but it's something a developer cannot allow. If a user reports a malfunction to the programmer, thats a very very valuable feedback (most of the users just uninstall the app and rate it 1 star). So if the user get's in touch with a developer, the developer should have the posibility of asking for a trace file right away. Otherwise, this very valuable user willing to help, won't do anything if you ask him to do many weird things (such as creating a file with the name of the app and reporting back when they have another error). No company can let a rare user willing to give some very valuable information scape, or making him do an effort, because then the user will just fly away.
In my opinion, the idea of the Garmin Connect IQ is very good, but the execution is very poor. Having had Garmin products before, I was happy with the products.
I had a Garmin 910xt before, I passed on the 920xt, but liked very much the wearability of the Fenix 3, and having read about the posibility of developing my own apps, thought it was a plus.
However, after a couple of days trying to develop a simple weather app, I see so many inconveniences, problems and errors, that makes me uncomfortable. And as I was doing this for fun, I will just give up and enjoy my Fenix 3 as is.
I don't know the reasons this could happen. I expected a more mature SDK, acording to the quality of Garmin products. I would bet that part of the R&D team are working on an android wearable (that would be a smart move)
just my two cents.