![](/img/trans.png)
[英]ERROR ITMS-90046: "Invalid Code Signing Entitlements. Specifically, value '*' for key > 'com.apple.developer.associated-domains'
[英]Apple Store submit fails with Error ITMS-90046, but Associated Domains is not among entitlements
當我第一次構建我的app&Watchkit應用程序時,我啟用了“Associated Domains”功能。 我已經在watchkit擴展和配套應用程序的“功能”面板中禁用了它,並確認密鑰已從每個info.plist中刪除。
我已經轉到Apples的“證書,標識符和配置文件”頁面,為每個Watchkit應用程序,擴展程序和應用程序選擇了應用程序ID,未選中“關聯域”,重新生成每個的配置文件,下載並安裝它們。
我已完成Ctrl-Shift-Command-K完全清理,重啟和重建。 在對appstore進行總結時,我收到以下錯誤消息。
我在xcode中完成了項目搜索,無法找到com.apple.developer.associated-domains鍵。 我搜索了構建目錄,nada。 我不相信這個密鑰實際上存在於我的代碼中,但iTunesConnect似乎認為它在那里並設置為'*'。
要解決此問題:
您必須重新生成與App ID關聯的任何配置文件。 出於某種原因,我的應用程序檢查了“Associated Domains”。 取消選擇它使AppStore提交工作。
我認為這是一個錯誤。
我通過簡單地在隨附應用程序和Watchkit擴展的Entitlements.plist中插入一個新的Array項來管理解決方法:“com.developer.apple.associated-domains”和webcredentials:string的有效域。 雖然這沒有實際效果,因為我的配置文件和應用程序或擴展程序的功能選項卡都沒有為關聯域啟用,但它停止了itunesconnect上的任何代碼掃描程序絆倒了不存在的鍵的“*”無效值。
如果要使用關聯域,請確保Entitlements.plist > com.developer.apple.associated-domains
每個條目都使用以下格式:
<service>:<fully qualified domain>[:port number]
例如。
webcredentials:www.example.com
applinks:www.example.com
activitycontinuation:www.example.com
請記住[:port number]
是可選的,但<service>
和<fully qualified domain>
是必需的!
從應用程序提交失敗錯誤我理解的可能是您的配置文件仍然啟用了“關聯域”並且在您的應用程序“權利”文件中丟失了它。
所以很明顯會有兩種情況。
場景1 :您是否要支持“關聯域”。 應該為“通用鏈接”等功能啟用此功能。
請參考以下鏈接:
在這種情況下,請不要手動編輯“授權”文件。 而是按照步驟。
1 。 在Xcode中選擇您的項目文件。
2 。 在“目標”下選擇適當的目標
3 。 選擇“常規”旁邊的“功能”
4 。 您可以看到“Associated Domains”的選項,如下所示。
5 。 啟用“ 關聯域 ”。 如果您啟用“ 關聯域 ”,Xcode將要求您登錄開發人員帳戶,它將與您的AppId和配置文件同步。
如上面的屏幕截圖所示,它將在啟用“ Associated Domains ”時執行兩項操作
如果從Xcode和開發者帳戶同步您的設置時出現任何問題,請選中以下復選框已啟用。
還要確保您的In House和App Distributions配置文件正確更新並同步。
大多數工作都是由Xcode本身完成的,我們只需要傾聽和理解。
場景2 :您的應用程序不需要“ 關聯域 ”功能。 在這種情況下,請按照@Ciprian Rarau給出的答案。 它解釋得很好。
正如ERROR ITMS-90164/90046中所述:無效的代碼簽名權利我能夠通過執行Clean構建來解決問題。 為了記錄,我收到了錯誤代碼ITMS-90164 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.