10-14-2017 20:30 - edited 10-14-2017 20:33
10-14-2017 20:30 - edited 10-14-2017 20:33
I read that "Apps have 64kb memory for code. There is also some memory associated for the UI SVG." and that there is a 'memoryPressureMonitor" API for detecting the state of the memory, so memory usage would appear to be a limiting factor.
So, without actually porting my app to the device (and not yet having a device,) how can I assess the device's capacity to host my app? I understand that I can spread my code across the watch and the companion phone, but it is mission critical that the app runs entirely on the watch, so spreading the load is not an option. On the Garmin CIQ2 platform, using the javascript-like, interpreted Monkey C language, it currently consumes 120kb (of the available 122kb.)
10-15-2017 14:32
10-15-2017 14:32
The device has a an amount of Javascript memory (64kb), and access to a pool of native memory (2mb I think).
The Javascript memory is used for objects, data, and the actual executing javascript code as well, and is something that a developer can easily fix if it's getting close to full. An example might be an application that records a user's position every second, eventually they'll run our of Javascript memory, they can be notified so that they can flush to file, and delete objects to free memory.
Native memory usage is something that developer has a less direct control over. It reflects how much space SVG and loaded resources are taking up, as well as how much underlying data there is for the JS APIs that a developer might be using. A large .gui file will take up a lot more native memory than a small .gui file.
Storage wise, each application is currently limited to a total of 15mb, including application code.
10-15-2017 14:44
10-15-2017 14:44
Thanks for the additional information, but what I really want to know is " how can I assess the device's capacity to host my app? ..."