2016-09-17 129 views
2

我得到一個錯誤,而上傳構建到App Store:Xcode 8發佈應用程序崩潰?

「無效捆綁在‘$ PATH’的資產目錄不能包含16位或P3資產,如果應用程序的目標是IOS版本早於iOS 9.3「

我以前上傳到Beta版測試纔剛好,我的部署目標是8.3。

回答

3

這個答案是完全解決您的問題

https://stackoverflow.com/a/39453818/1271424

你需要找到所有P3資產,然後將其轉換成sRGB色彩空間(使用任何圖像編輯器)。這裏是原來的答案:

和Xcode 8 GM,會出現此錯誤如果您在一個應用程序提交16-bit或P3 資產中定位iOS之前版本的iOS版,然後9.3 。如果您的應用需要廣泛的顏色功能,您必須將您的部署目標更改爲iOS 9.3或更高版本。如果您的應用不需要 需要廣泛的顏色功能,並且您希望將其部署到較早的iOS版本 ,則應該用 8位sRGB資產替換所有16位或P3資產。通過在來自 iTunes Connect的錯誤消息中指定的資產目錄上運行 「assetutil」,您可以找到16位或P3資產。以下步驟概述了該過程:

  1. 創建Inspectable .ipa文件。在Xcode Organizer(Xcode-> Window-> Organizer)中,選擇要檢查的檔案,點擊 「Export ...」,然後選擇「Export for Enterprise or Ad-Hoc Deployment」。 這將創建一個本地副本爲您的應用程序的.ipa文件。

  2. 找到.ipa文件,並更改其擴展爲.zip。

  3. 展開.zip文件。這將產生包含您的.app包有效負載文件夾。

  4. 打開終端並將工作目錄更改爲.app包的頂層cd路徑/ to/Payload/your.app

  5. 使用查找工具找到.app包中的Assets.car文件,如下所示:find。 -name'Assets.car'

  6. 使用assetutil工具在您的應用程序的每個Assets.car中查找任何16位或P3資產,如下所示。 :須藤xcrun --sdk 的iPhoneOS assetutil --info /path/to/a/Assets.car> /tmp/Assets.json

  7. 檢查所得/tmp/Assets.json並查找包含任何內容「 DisplayGamut「:」P3「及其關聯的」名稱「。這將是 是包含一個或多個16位或P3 資產的圖像集的名稱。

  8. 用8位/ sRGB資產替換這些資產,然後重建您的應用程序。

更新:如果您的部署目標被設定爲8.3或8.4和你有一個 資產目錄,那麼你將收到此相同的錯誤消息,即使你不 居然有16位或P3資產。在這種情況下,您需要將 您的部署目標降至8.2,或將其移至9.x.

相關問題