CIQ 3.2 - Wow!

Just installed 3.2 (see https://forums.garmin.com/developer/connect-iq/b/news-announcements/posts/connect-iq-3-2-now-available),

and in looking at the change log in the SDK README file, a bunch of new features!

Time to start trying stuff!

  • Also, I saw this, which I think is a bug, when I pressed Ctrl+M:

    Leastways, I haven't encountered any circular reference errors anywhere and this was with a mature project that has been live for some time.

  • What type of app, and which target?  I looked at a number of mine and don't see it.

    I posted some code yesterday on sharing code between a background service and a main app, and in the Wcomm class, you'll notice I set callback=null after involking the call back.  Without this, you could see a circular reference.

    What's changed in your app?  If you switch back to 3.1.9, do you see it there too? (the same plugin works with both 3.1.9 and 3.2.1)

  • "Add support for persisting BLE scan result objects to application storage."

    This was an easy one for me to try, as when I started doing BLE stuff, I thought you could already do it, and just had to un-comment a few lines of code.

    In 3.1, when a BLE app started, you always had to scan for a sensor, and it could get interesting if more than one of that type was in range.  With this, the first time an app runs, you can save the scan result, and subsequent times, you just use the saved scan result and go right to connecting so you always get the same sensor (and it's faster!).

  • Hi mates !

    Ive just done a Quick test of dc.antialiasing(true)

    Does not seem to run if called in onLayout(dc) 

    But works well in onUpdate. 

    No extra memory needed ?! Great !

    So why did not put it automaticaly for 3.2. 1 devices ? Battery usage ?

    Have a great day 

  • It's only on 3.2 devices, so maybe that.  You'll want to do a "has" check before you use it.

  • Weather!  At the second CIQ summit a few of us talked about adding this.  While you can get weather data from the web, and in some cases it requires a background service (like in a watch face), the watch already has weather data, so why not expose it?

    Well it's there now.  I threw together a simple DF to display temperature and wind direction/speed.  The view is about 50 lines of code.

  • Hello!
    I have downloaded and unpacked SDK Manager 3.2
    When trying to Login, a window opens with the message:
    This program cannot display this web page:

    Possible reasons:
    No internet connection.
    There is a problem with the website.
    There may be a typo in the address.

    I am using Windows 7 32bit SP1

  • It is what I did a has check, 

    And run 3.2 ciq on va4 for exemple 

    It works well if called on onUpdate but no effect if called in onLayout. 

  • where can we find a sample of weather?

  • I just looked at the API doc.  Here's the whole my my compute function, with calls to a couple helper functions to do conversions.  I set "hasWeather" with this in initialize: hasWeather=(Toybox has :Weather);

        function compute(info) {
    		var ret="N.A.";
    		if(hasWeather) {
        		var cc=Weather.getCurrentConditions();
        		if(cc!=null) {
        			ret=makeTemp(cc.temperature).format("%0.1f")+degree+" "+windDir(cc.windBearing)+" "+windSpd(cc.windSpeed);
        		}		
    		}
            return ret;
        }