ITMS-90682: can't contain 16-bit or P3 assets if the app supports iOS 8 or earlier

Hi, I just started seeing this error (without change in assets) in a testflight submission (we have iOS10-only code) - this is the full message (from XCode8)


"ERROR ITMS-906832: "Invalid Bundle. The aseet catalog at 'Paylod/XXXX/Assets.car' can't contain 16-but or P3 assets if the app supports iOS 8 or earlier"


I can submit by disabling iOS8 but need to know if this is a temporary error, or something wrong in our assets.


Thank you

Having the same problem, tried to compile the app using deployment target iOS 8.0, 8.1, 8.2 and, unfortunately, it didn't help. Switching to 9.3 did help, but we'd like to continue supporting old iOS version for now.

I also followed the instructions to check that no images are 16-bit or P3 and didn't find any.

Sent a radar 28360065.

Same problem for us on macOS Sierra and no P3 images.


It only worked switching to 9.3.. Very frustrating.. Every year new problems..

I just bumped my deployment target up...it's not worth potentially an hour or two to try to make this work, for my free app. If I was a conspirary theorist (I'm not) I'd say this would be a good way for Apple to get developers to stop supporting older versions of iOS.

Hi!

I have the same problem when I try to submit the app with deployment target iOS 8.0, 8.1, 8.2.

I've created the json but that contains only images sRGB and are 8-bits.


Works submitting with 9.3 but we need to support older versions.


Here my bug report: 28480581

This script helped me a lot!

just run it inside your Asset catalog. My Deployment target is 8.2 and App was successfully uploaded to AppStore after this script

#!/bin/sh
files=`find . -name "*.png"`
for i in ${files[@]}; do
    SOURCE_FILE=${i}
    DESTINATION_FILE=$SOURCE_FILE
    sips \
    --matchTo '/System/Library/ColorSync/Profiles/sRGB Profile.icc' \
    "$SOURCE_FILE" \
    --out "$DESTINATION_FILE"
done
exit 0

We are having the same issue. A few days ago, we released our app with Xcode 7.3. Yesterday, I migrated to Swift 3 and today I was trying to upload a beta to TestFlight but I'm having this error. Every target in our app points to iOS 9. I've tried the proposed solution and none of my assets are 16-bit or P3. What should we do?


EDIT:


The script above me fixed the error! We were able to ship the app after using the script!

Thank you for this. Your updated comment about the Deployment Target was the answer for me. I had mine set to 8.4 and couldn't submit or even run the app in the 8.4 simulator. Changed the target to 8.2 and it works like a charm.


Rohan.

Hi 3ZS.


Using the release Xcode 8.0, I've run a validation on our IPA that needs to target iOS 8.1, because I only have 1 device that has iOS 8 on it and it's iOS 8.1.3.


Validation fails reporting the following:


iTunes Store operation failed.

Invalid Bundle. The asset catalog at 'Payload/ThisAppHere.app/Assets.car' can't contain 16-bit or P3 assets if the app is targeting iOS releases earlier than iOS 9.3.


There are no 16 bit assets in our project and I have no idea what a P3 asset might be.


I just went through every image file in our iOS app, and every asset lib as well.


Any ideas here?

Have you followed the instructions in the Correct Answer at the very beginning of this thread?

After following your instructions, I still have the same issue. I noticed that some of my images have the color space listed as "Adobe RGB (1998)"; could this possibly be the issue? I have a lot of images, so I haven't gone through and looked at all of them.

I created a case for you to look at: 28739590

We have followed the instructions and yet the appstore upload is still failing with:


iTunes Store operation failed.

Invalid Bundle. The asset catalog at 'Payload/ThisAppHere.app/Assets.car' can't contain 16-bit or P3 assets if the app is targeting iOS releases earlier than iOS 9.3.


We are setting the target to 8.2 and all are images are s-RGB format. Any help would be greatly appreciated.

Please file a bug report, attach a copy of the .ipa you are trying to submit, and post the bug number here. We're looking at bseay's case and will look at yours once we have the bug.

Bug Report: 28757844


Thanks Apple!!

Actually in your case you do have a P3 asset in your Assets.car file. The image "Add_to_Passbook_Badge_2014" shows up with the DisplayGamut property showing "P3" when running assetutil tool on your Assets.car file. If you can get that image updated to use sRGB then that'll work better for you.


As an aside, as of iOS 9 we now have the PKAddPassButton class that you should probably be using instead of your own button. It will display the correct Add to Wallet badge, localized, and with the appropriate appearance.

Great, that solved the problem. Thanks!!

Thank you for that useful information... actually I used the Preview app to change the color profile (in Preview app, go to Tools -> Assign profile...) from "Adobe RGB (1998)" to "sRGB IEC61966-2.1" and rebuilt the project.

I don't think I every replied to @bseay. Your .ipa file has P3 assets in it, so the error message is correct. You should follow the directions at the beginning of this (long) thread and remove all the P3 assets by converting them to sRGB.

ITMS-90682: can't contain 16-bit or P3 assets if the app supports iOS 8 or earlier
 
 
Q