09-27-2020
02:16
- last edited on
09-27-2020
05:22
by
JonFitbit
09-27-2020
02:16
- last edited on
09-27-2020
05:22
by
JonFitbit
Besides a lot of manual work for developers, the new platform also seemed to have a lot of other issues. I followed the SDK 5.0 migration and I have got a whole bunch of errors. The simulator also seemed to be stuck in the low battery screen after I changed the battery level. It looks like that this migration will cause the developers a fair bit of frustration.
[5:01:30 PM]Error 2 Invalid path '/mnt/sysassets/widgets/dynamic_textarea.css'
[5:01:30 PM]Error 22 Invalid value ''
[5:01:30 PM]Error 2 Invalid path '/mnt/sysassets/widgets/dynamic_textarea.gui'
mnt/sysassets/widgets/dynamic_textarea.gui:1,1[5:01:30 PM]Error 22 Invalid value ''
[5:01:30 PM]Error 2 Invalid path '/mnt/sysassets/widgets/square_button_widget.gui'
mnt/sysassets/widgets/square_button_widget.gui:1,1[5:01:30 PM]Error 22 Invalid value ''
[5:01:30 PM]Error 2 Invalid path '/mnt/sysassets/widgets/mixed_text_widget.gui'
mnt/sysassets/widgets/mixed_text_widget.gui:1,1[5:01:30 PM]Error 22 Invalid value ''
mnt/sysassets/widgets/cycleview_widget.defs:13,1[5:01:30 PM]Error 22 Conflicting use of attribute 'data-size' in cycleview-item
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
sim-file:/bootstrap:541,38[5:01:31 PM]App Cluster ID "fibby" is not accessible by app
(app cluster have been enabled and IDs is the same as previous)
09-27-2020 05:24
09-27-2020 05:24
Take a look at the migration guide to fix some of those errors:
https://dev.fitbit.com/build/guides/migration/#sdk-4-x-to-5-0
.gui imports should be .defs
mixed text component has been removed.
09-27-2020 20:10 - edited 09-27-2020 20:37
09-27-2020 20:10 - edited 09-27-2020 20:37
It's a mess that would require re-writing an app's UI completely. The list of defs that have been removed and UI controls are below for my app. Is there any way to convert the old GUI to the new one automatically or semi-automatically? Who was a genius that has made this wonderful decision about not supporting existing UI controls?
Defs/CSS:
mixed_text_widget.defs
dynamic_textarea.css
combo_button_widget.defs
square_button_widget.defs
UI's
#combo-button-* (all combinations)
#mixed-text-* (all combinations)
09-28-2020 07:18
09-28-2020 07:18
A minor point about your post, just in case anybody else get confused by testing the "Power + Display" settings in the simulator, and thinks that it got stuck.
If your clock displays the battery level, and you test it by moving the power level indicator in the simulator for the Versa 3 and Sense devices, you will get a message saying that certain features were turned off to conserve the battery power. At first, I couldn't figure out how to get past it, and it did look like the simulator was stuck. It's not ...
Flick up on the screen to get through the text. At the bottom of the long text message, there is a "Got It" button. Click the "Got It" button and you can continue testing.
At first, it confused me too. 😉
09-28-2020 10:08
09-28-2020 10:08
good to know, Thanks for sharing
09-30-2020 04:30
09-30-2020 04:30
Thanks, it looks like I have mixed up and run the SDK4 version on SDK5. I have straighten things out and now left with this error.
Conflicting use of attribute 'data-size' in cycleview-item
09-30-2020 19:15
09-30-2020 19:15
That's right. square_button is gone. You'll need to replace it with icon_button: https://dev.fitbit.com/build/guides/user-interface/svg-components/buttons/
mixed_text is gone and it's the most painful change for me. Need to use <text> or <textarea> instead
dynamic_textarea is still alive, you just need to change .gui with .defs to avoid errors
You don't need to specify dynamic_textarea.css anymore - just remove that line
Good luck!
10-14-2020 17:42
10-14-2020 17:42
Hey @Credelius do you know what can be used instead of combo-button which had 3 properties.
1. href="combo-button-icon"
2. href="combo-button-icon-press"
3. href="combo-button-stroke"
@Jon, if you can point in the correct direction?
10-17-2020 03:09
10-17-2020 03:09
Hi fibby,
Were you able to fix this error? I am still facing the error: "Conflicting use of attribute 'data-size' in cycleview-item" when building and running a clock for sdk5 + Versa 3.
10-17-2020 03:45
10-17-2020 03:45
no, I am still getting the error but the functionality is running fine and I have got approval to publish the clockface.
10-17-2020 06:13
10-17-2020 06:13
Thanks! I will submit my clock for review then.
10-19-2020 22:51
10-19-2020 22:51
02-16-2021 18:27
02-16-2021 18:27
Not yet, but I figured that some errors in SDK 5 are mixed up with the previous version and sits tight in cache.
The build produced this error "[5:19:50 PM] App: Error 22 Load event was not sent due to missing type handler '(null)' in ./Resources/switcher/switcher_main.view" and I found some 2 weeks old files on macos named like this "#-Resources-switcher-switcher_main.view.cache".
11-24-2021 15:37
11-24-2021 15:37
Did you find any way to replace combo buttons? I have upper and lower icon combo buttons on the right of the screen that work with the physical buttons on my Versa. The icons change when you press the button and the highlighting reverses. Is there any way to keep any of this functionality with 5.0?
Here is some of the code I need to convert:
<!-- Start/Stop button -->
<use id="btnStartStop" href="#combo-button-lower-right" fill="fb-green">
<set href="combo-button-icon" attributeName="href" to="btn_combo_play_press_p.png"/>
<set href="combo-button-icon-press" attributeName="href" to="btn_combo_play_p.png"/>
<set href="combo-button-stroke" attributeName="display" to="inline"/>
</use>