SO frustrating. A user of one of my data fields tells me it crashes every time he changes a User Setting.
Of course sending him a Built for Device version to generate debug line numbers won't work... because User Settings aren't supported in that type of build.
He runs an Edge 1000, which is CIQ 2.4 based. It works perfectly on my CIQ 3.0 devices, and even in the simulator as a 2.4 based 1000.
Here is my theory.... User Settings in a 2.4 device come thru as a STRING, even if they are defined as numbers. So a type mismatch crash happens.
I can easily add toNumber, toFloat, etc in the User Setting retrieval code to force it to the right type, if this is a known variance in 2.4 devices, and a known bug in the simulator.
UPDATE: adding toNumber apparently ISNT that easy. Ugh. I'm clearly doing something strange here but don't get it.
In a function - to show that toNumber() is a known symbol:
==================
var x = 5.3;
var y = x.toNumber();
System.println("X: " + x + " Y: " + y);
User[:lapFlag] = getP.getProperty("lapFlag_prop").toNumber();
Output:
==================
X: 5.300000 Y: 5
Could not find symbol 'toNumber'
Symbol Not Found Error