Is there any API which can return the device supported color depth? Or do I have to do it the hard way and see if System.getDeviceSettings().partNumber is in this list to know if it is limited to 14 colors?
Is there any API which can return the device supported color depth? Or do I have to do it the hard way and see if System.getDeviceSettings().partNumber is in this list to know if it is limited to 14 colors?
displayName | deviceId | deviceFamily | bitsPerPixel | partNumbers_0_ _connectIQVersion_ |
partNumbers_0_ _number_ |
D2 |
d2bravo | round-218x218 | 4 | 1.4.4 | 006-B2262-00 |
D2 |
d2bravo_titanium | round-218x218 | 4 | 1.4.4 | 006-B2547-00 |
fēnix® 3 / tactix® Bravo / quatix® 3 | fenix3 | round-218x218 | 4 | 1.4.4 | 006-B2050-00 |
fēnix® 3 HR | fenix3_hr | round-218x218 | 4 | 1.4.4 | 006-B2413-00 |
Forerunner® 230 | fr230 | semiround-215x180 | 4 | 1.4.4 | 006-B2157-00 |
Forerunner® 235 | fr235 | semiround-215x180 | 4 | 1.4.4 | 006-B2431-00 |
Forerunner® 630 | fr630 | semiround-215x180 | 4 | 1.4.4 | 006-B2156-00 |
Forerunner® 920XT | fr920xt | rectangle-205x148 | 4 | 1.4.4 | 006-B1765-00 |
Forerunner® 45 | fr45 | round-208x208 | 4 | 1.4.5 | 006-B3282-00 |
Garmin Swim |
garminswim2 | round-208x208 | 4 | 1.4.5 | 006-B3405-00 |
Forerunner® 735xt | fr735xt | semiround-215x180 | 4 | 2.4.1 | 006-B2158-00 |
Edge® 130 | edge130 | rectangle-230x303 | 1 | 3.1.1 | 006-B2909-00 |
Edge® 130 Plus | edge130plus | rectangle-230x303 | 1 | 3.2.0 | 006-B3558-00 |
Forerunner® 55 | fr55 | round-208x208 | 4 | 3.2.5 | 006-B3869-00 |
Descent |
descentg1 | semioctagon-176x176 | 1 | 3.2.7 | 006-B4005-00 |
Instinct® 2 / Solar / Dual Power / dēzl Edition | instinct2 | semioctagon-176x176 | 1 | 3.3.4 | 006-B3888-00 |
Instinct® 2S / Solar / Dual Power | instinct2s | semioctagon-163x156 | 1 | 3.3.4 | 006-B3889-00 |
Instinct® Crossover | instinctcrossover | semioctagon-176x176 | 1 | 3.3.6 | 006-B4155-00 |
True, I do not expect Garmin to fix it. What I'm asking for, and the point I'm trying to make, is that if everyone has to do this because we're all in the same boat then has anyone come up with a solution outside of Garmin we can all use, or based on the 10,000+ apps in the store there are 10,000+ reinvented wheels? What I'm hearing is "Go and invent your own wheel."
It might be that a generally-useful "easy" solution might be too big. So, even if something like this existed, it might be abandoned fairly quickly to make room memory-limited devices.
jim_m_58 described the way people generally deal with it.
Once you go through the pain of setting such a scheme up, it's fairly easy to add new devices.
Most of the 10,000+ apps don't deal with it at all (my app/widget doesn't).
In my case I might be able to safely assume that Garmin won't be making any more 14 color devices, so the existing list is complete. Thus, this might be OK:
private var _hiColor as Boolean = false; var lowColorPN as Array<Number> = [2262, 2547, 2050, 2413, 2157, 2431, 2156, 1765, 3282, 3405, 2158, 2909, 3558, 3869, 4005, 3888, 3889, 4155] as Array<Number>; var thisDev = System.getDeviceSettings(); var pnNum = thisDev.partNumber.substring(5,9).toNumber(); var pnIdx = _lowColorPN.indexOf(pnNum); _hiColor = (pnIdx != null && pnIdx < 0); lowColorPN = null;
My frustration is that of all the other information I can get like API version, part number, screen shape, resolution, etc, that color depth got left out. It's the potholes on this road that make me feel like I'm driving around New Orleans again.
What you did doesn't seem too hard.
If one is coming from a more modern/capable environment (like C#), there is code out there to do almost anything and there's not much cost adding it to your product.
It does seem we won't see new 14 color ones.
It's the potholes on this road that make me feel like I'm driving around New Orleans again.
At least there, the music is good!
I generate my monkey.jungle with a script that parses compiler.json and simulator.json for these kind of things. If you have python i can send it (it's on GitHub, but I'll need to add some examples and readme)
Parsing the json is the easy part, PHP does in with one function. It's the jungle file that I've struggled with in the past. The annotations part just didn't want to work for me. It sure wouldn't hurt to see some working examples, so whatever you feel free to float my way would be appreciated.
You can see it here: https://github.com/flocsy/garmin-dev-tools/tree/main/monkey-generator I'll try to add a README in the next few days. You'll need to look for easier example projects to figure out your problems with annotations, this won't really help you, 'cause it's "over complicated"