Acknowledged

Problem with installing app

One of my user has tried to install widget PSX-7 (https://apps.garmin.com/apps/1944b8b4-409e-482d-b7b3-becd4e8b1b05) but he couldn't due the incapability error but he has installed PSX-6 (https://apps.garmin.com/apps/e4ce9423-c37e-4aa7-b778-f24c2347c923). Both are built the same SDK (7.3.1m PSX-7 few days later), both have the same min API level to 2.4.

  • > I I'm not sure but probably PSX-6 hss subset of device from PSX-7

    You can be sure because I already posted the diff of the compatibleDevicePartNumbers arrays: some part numbers are unique to PSX-6 and some are unique to PSX-7, while most part numbers are common to both. If by "device" you actually mean CIQ device and not part number, you can obviously compare manifest.xml for each app to be sure.

    > BTW

    > Instinct® 2S Solar – Surf Edition, Surf Edition, Ericeira 010-02564-03

    > There is no *2564* nowhere

    I have no idea what you're quoting here: "Instinct® 2S Solar – Surf Edition, Surf Edition, Ericeira 010-02564-03". Yes, that's apparently an Instinct 2S hardware variant you can (or could) buy, but what's the relevance to your app?

    You can see that format of the part number (010-02564-03) is different than the part numbers that appear in CIQ compiler.json as partNumbers[].number. 010-02564-03 looks like a part number that would appear on a store box (used by retailers) - it also looks like various hardwarePartNumber values in compiler.json

    010-02564-03: (looks like) hardwarePartNumber (note that there's one of these for 1 CIQ device's compiler.json)

    006-B3889-00: (looks like) partNumbers[].number (there can be several of these for 1 CIQ device's compiler.json)

    Notice how every partNumbers[].number in compiler.json starts with "006-B"? While every hardwarePartNumber starts with "010-0"? 2 completely different patterns. Retailers also never seem to use the "006-B" part numbers.

    I agree that "010-02564-03" (or any string containing "2564") doesn't appear as a hardwarePartNumber, but then again "Instinct® 2S Solar – Surf Edition, Surf Edition, Ericeira" (or just "Ericeira" doesn't appear as part of a device display name or a name in the device types request.

    Similarly, on the Garmin Instinct 2* page, there's all kinds of different (hardware) part numbers for various combos of colours and variants (standard vs. tactical vs. camo):

    https://www.garmin.com/en-CA/p/775357/

    Just to name 2:

    010-02626-13 - Instinct® 2 - Camo Edition (Graphite Camo)

    010-02805-11 - Instinct® 2X Solar (Flame Red)

    Most of those (hardware) part numbers don't appear in any CIQ-related contexts (like compiler.json or the deviceTypes request used by the store) because CIQ doesn't care what colour your watch is or whether it's a camo edition.

    For reference, the CIQ hardwarePartNumber for...

    ... Instinc 2 is 010-02626-10

    ... Instinct2X is 010-02805-10

    > All the seme, apart from the app type and user can download watch face but can't widget.

    Yeah it's a weird problem. When you export the IQ file for each app, do you get any warnings about excluded part numbers?

  • I can guess where the problem might come from (no specification in device json), but...

    I build watch face, including watch X, a few day later I build widget also including X, the same SDK, the same devices, the same min api... All the seme, apart from the app type and user can download watch face but can't widget.

    BTW

    Instinct® 2S Solar – Surf Edition, Surf Edition, Ericeira 010-02564-03

    There is no *2564* nowhere

    Of course both apps can have different set of watches e.g. watches faces can be built for e.g. edges. I I'm not sure but probably PSX-6 hss subset of device from PSX-7

    And yes, the email of my user suggests he uses APAC version of app, 

  • Note to Garmin: the bug reports forum is mangling URLs in a way that makes them useless:

    If I paste [https://apps.garmin.com/api/appsLibraryExternalServices/api/asw/deviceTypes] as a bare URL, then the text is abbreviated (as the forum often does after linkifying a bare URL), but the URL is *not* linkified, leading to a completely useless snippet of text:

    apps.garmin.com/.../deviceTypes

    In light of issues like this, it's frustrating that there's no way to edit comments in the bug reports forum.

  • [2/2]

    Diff Legend (first character of each line):

    - only in psx-6
    + only in psx-7
    (space) in both psx-6 and psx-7

    instinct2s has the following part numbers in compiler.json:

    006-B3889-00 (WW, 3.4.2)
    006-B4091-00 (APAC, 3.2.7)

    Note that both PSX-6 and PSX-7 have 006-B3889-00 yet only PSX-6 has 006-B4091-00 (for whatever reason).

    Looking at the diff contents, there are many examples of part numbers only in PSX-6 (with - prefix), and checking a few randomly, they seem to be APAC part numbers.

    Otoh, i checked a part number that was only in PSX-7 (with + prefix) and it happened to be a WW part number.

    If you want more info on these part numbers (which is sometimes not apparent from compiler.json), you can look at the following request:

    [https://apps.garmin.com/api/appsLibraryExternalServices/api/asw/deviceTypes]

  • I took a look at the app info request for each app (using the network inspector in Firefox):

    PSX-7: https://apps.garmin.com/api/appsLibraryExternalServices/api/asw/apps/1944b8b4-409e-482d-b7b3-becd4e8b1b05?

    PSX-6: https://apps.garmin.com/api/appsLibraryExternalServices/api/asw/apps/e4ce9423-c37e-4aa7-b778-f24c2347c923?

    The respective values for the compatibleDevicePartNumbers arrays are not the same.

    After sorting the arrays and diffing them, I get the following result (with full context):

    --- psx-6.json	2025-01-21 00:37:00
    +++ psx-7.json	2025-01-21 00:37:04
    @@ -1,196 +1,151 @@
    -psx-6
    +psx-7
    +    "006-B1836-00",
    +    "006-B2067-00",
         "006-B2158-00",
         "006-B2187-00",
    +    "006-B2204-00",
         "006-B2337-00",
         "006-B2432-00",
    -    "006-B2497-00",
    -    "006-B2533-00",
    +    "006-B2444-00",
    +    "006-B2512-00",
    +    "006-B2530-00",
    +    "006-B2531-00",
         "006-B2544-00",
         "006-B2604-00",
         "006-B2656-00",
    -    "006-B2675-00",
         "006-B2691-00",
         "006-B2697-00",
         "006-B2700-00",
    -    "006-B2796-00",
    -    "006-B2797-00",
    -    "006-B2798-00",
    +    "006-B2713-00",
         "006-B2819-00",
    -    "006-B2833-00",
         "006-B2859-00",
         "006-B2886-00",
         "006-B2888-00",
         "006-B2900-00",
    -    "006-B2907-00",
    -    "006-B2976-00",
         "006-B2988-00",
    -    "006-B2991-00",
    -    "006-B2994-00",
    -    "006-B3003-00",
    -    "006-B3004-00",
    +    "006-B3011-00",
    +    "006-B3028-00",
         "006-B3066-00",
         "006-B3076-00",
         "006-B3077-00",
    -    "006-B3089-00"
    +    "006-B3095-00",
         "006-B3110-00",
         "006-B3111-00",
    +    "006-B3112-00",
         "006-B3113-00",
    -    "006-B3134-00",
    -    "006-B3135-00",
    -    "006-B3145-00",
    -    "006-B3163-00",
    +    "006-B3121-00",
    +    "006-B3122-00",
    +    "006-B3187-00",
         "006-B3196-00",
         "006-B3197-00",
         "006-B3198-00",
         "006-B3224-00",
         "006-B3225-00",
         "006-B3226-00",
         "006-B3246-00",
         "006-B3247-00",
         "006-B3248-00",
         "006-B3249-00",
         "006-B3250-00",
         "006-B3251-00",
         "006-B3258-00",
    +    "006-B3284-00",
         "006-B3287-00",
         "006-B3288-00",
         "006-B3289-00",
         "006-B3290-00",
         "006-B3291-00",
    -    "006-B3321-00",
    -    "006-B3324-00",
    -    "006-B3387-00",
    -    "006-B3388-00",
    -    "006-B3389-00",
         "006-B3393-00",
    -    "006-B3420-00",
    -    "006-B3421-00",
    -    "006-B3428-00",
    -    "006-B3441-00",
    -    "006-B3446-00",
    -    "006-B3448-00",
    -    "006-B3449-00",
    -    "006-B3450-00",
    -    "006-B3451-00",
    +    "006-B3452-00",
    +    "006-B3453-00",
    +    "006-B3454-00",
    +    "006-B3455-00",
    +    "006-B3459-00",
         "006-B3473-00",
    -    "006-B3477-00",
         "006-B3498-00",
         "006-B3499-00",
         "006-B3500-00",
         "006-B3501-00",
    -    "006-B3512-00",
    -    "006-B3513-00",
    -    "006-B3514-00",
    -    "006-B3515-00",
    -    "006-B3516-00",
    -    "006-B3535-00",
    -    "006-B3536-00",
    -    "006-B3537-00",
    -    "006-B3538-00",
         "006-B3542-00",
    +    "006-B3570-00",
         "006-B3589-00",
         "006-B3596-00",
         "006-B3599-00",
         "006-B3600-00",
         "006-B3603-00",
         "006-B3624-00",
         "006-B3638-00",
    -    "006-B3648-00",
         "006-B3652-00",
    -    "006-B3700-00",
    -    "006-B3702-00",
    +    "006-B3694-00",
         "006-B3703-00",
         "006-B3704-00",
    -    "006-B3737-00",
         "006-B3739-00",
         "006-B3740-00",
    -    "006-B3764-00",
    -    "006-B3765-00",
    -    "006-B3766-00",
    -    "006-B3767-00",
    -    "006-B3768-00",
    -    "006-B3769-00",
    -    "006-B3770-00",
    -    "006-B3771-00",
    -    "006-B3782-00",
    -    "006-B3783-00",
    -    "006-B3794-00",
    -    "006-B3837-00",
    -    "006-B3838-00",
    -    "006-B3850-00",
    +    "006-B3843-00",
         "006-B3851-00",
         "006-B3869-00",
    -    "006-B3872-00",
         "006-B3888-00",
         "006-B3889-00",
         "006-B3905-00",
         "006-B3906-00",
         "006-B3907-00",
         "006-B3908-00",
         "006-B3909-00",
         "006-B3910-00",
    -    "006-B3913-00",
    -    "006-B3914-00",
    -    "006-B3930-00",
         "006-B3943-00",
         "006-B3944-00",
    -    "006-B3949-00",
    -    "006-B3950-00",
         "006-B3990-00",
         "006-B3991-00",
         "006-B3992-00",
         "006-B3993-00",
         "006-B4005-00",
    -    "006-B4017-00",
         "006-B4024-00",
    -    "006-B4033-00",
    -    "006-B4071-00",
    +    "006-B4061-00",
    +    "006-B4062-00",
         "006-B4079-00",
    -    "006-B4091-00",
         "006-B4105-00",
         "006-B4115-00",
         "006-B4116-00",
    -    "006-B4118-00",
    -    "006-B4119-00",
         "006-B4124-00",
         "006-B4125-00",
    -    "006-B4132-00",
         "006-B4135-00",
         "006-B4155-00",
    +    "006-B4169-00",
         "006-B4171-00",
         "006-B4175-00",
    -    "006-B4180-00",
    -    "006-B4181-00",
         "006-B4222-00",
         "006-B4223-00",
         "006-B4233-00",
         "006-B4234-00",
         "006-B4257-00",
         "006-B4258-00",
         "006-B4260-00",
         "006-B4261-00",
         "006-B4312-00",
         "006-B4313-00",
         "006-B4314-00",
         "006-B4315-00",
    +    "006-B4336-00",
         "006-B4341-00",
         "006-B4374-00",
         "006-B4375-00",
         "006-B4376-00",
         "006-B4394-00",
    +    "006-B4415-00",
         "006-B4426-00",
         "006-B4432-00",
         "006-B4433-00",
    +    "006-B4440-00",
         "006-B4472-00",
         "006-B4532-00",
         "006-B4533-00",
         "006-B4534-00",
         "006-B4536-00",
         "006-B4542-00",
    -    "006-B4556-00",
    +    "006-B4556-00"
         "006-B4575-00",
         "006-B4595-00",
         "006-B4596-00",
         "006-B4666-00",
     "compatibleDevicePartNumbers": [
     ],
    \ No newline at end of file