Hello,
I am a bit new to the Garmin IQ, but I am having trouble building the Analog watch sample. This is happening in both Windows 10 and Linux (Debian -- On a sidenote, if anyone is looking to get the SDK running on linux, I found a wonderful hint. Putting the *.so dependencies in the folder of the sdk installer worked for me).
I have tried 4 different SDK samples (SDK 4.2, 4.1.7, 4.1.6 and 3.1.8). The most recent 2 have a second issue as well, but it is easily fixed.
Here is the error I am getting, and because I am so new to Monkey C, I am having difficulty figuring out which asset is missing.
Error: Symbol Not Found Error Details: Failed invoking <symbol> Stack: - onLayout() at ~\samples\Analog\source\AnalogView.mc:59 0x10000955 Encountered app crash.
This is the code block AnalogView.mc where it crashes.
// If this device supports BufferedBitmap, allocate the buffers we use for drawing if(Toybox.Graphics has :BufferedBitmap) { // Allocate a full screen size buffer with a palette of only 4 colors to draw // the background image of the watchface. This is used to facilitate blanking // the second hand during partial updates of the display offscreenBuffer = new Graphics.BufferedBitmap({ :width=>dc.getWidth(), :height=>dc.getHeight(), :palette=> [ Graphics.COLOR_DK_GRAY, Graphics.COLOR_LT_GRAY, Graphics.COLOR_BLACK, Graphics.COLOR_WHITE ] });
The other issue with the newer samples is the following.
When using VSCode to set the products, I get the following error...
Command 'Monkey C: Set Products by Product Category' resulted in an error (Cannot read property 'each' of undefined)
I have tried building for the Venu, The Fenix 7, and the Fenix 6.
Oddly enough, If I try to build with the manifest as is, I get the following error...
ERROR: fenix6: Invalid device id found in the application manifest: 'descentmk1'. ERROR: fenix6: Invalid device id found in the application manifest: 'fenix3'. ERROR: fenix6: Invalid device id found in the application manifest: 'fenix5'. ERROR: fenix6: Invalid device id found in the application manifest: 'd2bravo'. ERROR: fenix6: Invalid device id found in the application manifest: 'd2charlie'. ERROR: fenix6: Invalid device id found in the application manifest: 'fenix5s'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr735xt'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr230'. ERROR: fenix6: Invalid device id found in the application manifest: 'epix'. ERROR: fenix6: Invalid device id found in the application manifest: 'fenix5x'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr630'. ERROR: fenix6: Invalid device id found in the application manifest: 'approachs60'. ERROR: fenix6: Invalid device id found in the application manifest: 'd2bravo_titanium'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr235'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr920xt'. ERROR: fenix6: Invalid device id found in the application manifest: 'fenix3_hr'. ERROR: fenix6: Invalid device id found in the application manifest: 'fr935'. ERROR: Invalid device id found.
Of course, this issue is easily fixed by manually editing the manifest.
I do not have my watch yet (it comes tomorrow), so the error above is only on the simulator.