0

在我的Xamarin iOS項目中,Entitlements.plist的aps-environment設置爲development,用於開發測試目的。我正在使用Visual Studio Team Services Extension for the App Store將發佈版本自動化到TestFlight。然而,當它使用FASTLANE飛行員上傳應用程序,我得到這個錯誤:Xamarin中aps環境從開發到生產的自動轉換

ERROR ITMS-90046: "Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on iOS. Specifically, value 'development' for key 'aps-environment' in 'project' is not supported.

看起來運行持續集成構建時環境應該得到切換到production。我該如何實現自動化?

+0

你用來構建應用程序的配置是什麼(配置在Xamarin.iOS任務中)?您是否爲Xamarin.iOS任務指定了Provisioning Profile File?對於該配置,iSO Bundle Signing(右鍵點擊project => Properties => iSO Bundle Signing)的設置是什麼?您是否正確選擇了配給配置文件和自定義entitlements.plist?您可能會生成一個新配置文件並將其用於該配置。 [使用TestFlight](https://developer.xamarin.com/guides/ios/deployment,_testing,_and_metrics/testflight/) –

+0

在Xamarin.iOS任務中,Signing&Provisioning設置爲使用文件內容,但所有字段是空白的。在項目的iOS捆綁簽名中,簽名身份是開發人員(自動)或分發(自動),具體取決於構建配置。供應配置文件是自動的。配置(無推送通知)正在工作。對於這兩種配置,Custom Entitlements都設置爲「Entitlements.plist」。我應該把'Entitlements.plist'分成'Entitlements.developer.plist'和'Entitlements.distribution.plist'? –

+0

您可以嘗試一下並檢查結果。 –

回答

2

刪除Entitlements.plist,並添加Entitlements.developer.plistEntitlements.production.plist。在iOS捆綁軟件設置中,根據生成配置輸入Customer Entitlements的相應plist文件。

+0

在標準模板或Xamarin文檔中沒有關於此方法的信息。這讓我懷疑Xamarin是否有一種不同的方法。它的工作,雖然。 –