将内容上传到App Store时出错:
“无效的捆绑包。如果应用程序的目标是早于iOS 9.3的iOS版本,则'$ path'的资产目录不能包含16位或P3资产”
我曾经将它上传到Beta测试之前就好了,我的部署目标是8.3。
答案 0 :(得分:3)
这个答案正是您问题的解决方案
https://stackoverflow.com/a/39453818/1271424
您需要找到所有P3资源,然后将它们转换为sRGB颜色空间(使用任何图像编辑器)。这是最初的答案:
使用Xcode 8 GM时,如果包含16位或P3,则会发生此错误 应用提交中的资源,其目标是早于iOS的iOS版本 9.3。如果您的应用需要广泛的颜色功能,则必须将部署目标更改为iOS 9.3或更高版本。如果您的应用没有 需要广泛的颜色功能,并希望将其部署到旧版本 iOS版本然后你应该替换所有16位或P3资产 8位sRGB资产。您可以通过运行找到16位或P3资产 来自错误消息中指定的资产目录上的“assetutil” iTunes Connect。以下步骤概述了该过程:
创建一个Inspectable .ipa文件。在Xcode Organizer(Xcode-> Window-> Organizer)中,选择要检查的存档,单击 “导出...”,然后选择“导出企业版或特别部署版”。 这将为您的应用创建.ipa文件的本地副本。
找到.ipa文件并将其扩展名更改为.zip。
展开.zip文件。这将生成一个包含.app包的Payload文件夹。
打开终端并将工作目录更改为.app软件包的最高级别cd path / to / Payload / your.app
使用find工具查找.app包中的Assets.car文件,如下所示:find。 -name'Assets.car'
使用assetutil工具在您的应用程序具有的每个Assets.car中查找任何16位或P3资产,如下所示。 :sudo xcrun --sdk iphoneos assetutil --info /path/to/a/Assets.car> /tmp/Assets.json
检查生成的/tmp/Assets.json并查找包含“DisplayGamut”的任何内容:“P3”及其关联的“名称”。这将 是包含一个或多个16位或P3的图像集的名称 资产。
- 醇>
用8位/ sRGB资产替换这些资产,然后重建您的应用。
更新:如果您的部署目标设置为8.3或8.4并且您有 资产目录然后您将收到相同的错误消息,即使您没有 实际上有16位或P3资产。在这种情况下,您需要降低 您的部署目标为8.2,或将其移至9.x.