Complete

WERETECH-9596

Cannot Reproduce

SDK 3.2.1 vs SDK 3.1.9 Runtime Error?

Can anyone shed any light on why the code snippet below works fine on SDK 3.1.9 but fails with the error below with SDK 3.2.1.  The last line of code relates to the first error in the list.

private var heartRateZoneDisplayRatio = 0.0;

function initialize() {
    var profile = UserProfile.getProfile();
    var currentSport = profile.getCurrentSport();
    heartRateZones = profile.getHeartRateZones(currentSport);

    //work out the ratio to move the ticker for increase in 1 beat
    heartRateZoneDisplayRatio = 250 / (heartRateZones[5] - heartRateZones[0]).toFloat();
}

Error: Invalid Value
Details: Failed invoking <symbol>
Stack:
- initialize() at C:\Garmin\Git\datafields\Multi\01-BaseMulti\source\BaseMultiView.mc:9 0x10001320
- initialize() at C:\Garmin\Git\datafields\Multi\20-ConfigMulti\source\ConfigMultiView.mc:19 0x10000077
- getInitialView() at C:\Garmin\Git\datafields\Multi\20-ConfigMulti\source\ConfigMultiApp.mc:25 0x1000005e

  • I don't know of anything off the top of my head that could cause this to behave differently between SDK versions.. I'm assuming that you're saying if you build with the 3.1.9 SDK the app works and if you build with 3.2.1 SDK it fails with the given error? Is heartRateZones a Lang.Array? If so, what is the size, and what are the values at heartRateZones[5] and [0]?