0

私のXamarin iOSプロジェクトでは、開発テストの目的で、Entitlements.plistにはaps-environmentdevelopmentに設定されています。私はVisual Studio Team Services Extension for the App Storeを使ってTestFlightに公開ビルドを自動化しています。それはアプリをアップロードするfastlaneパイロットを使用している場合しかし、私はこのエラーを取得:Xamarinで開発から生産までのaps-environmentの自動変換

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のプロビジョニングプロファイルファイルを指定していますか?その設定のiSOバンドル署名の設定(右クリックプロジェクト=>プロパティ=> iSOバンドル署名)は何ですか? ProvisioningプロファイルとCustom entitlements.plistを正しく選択していますか?新しいプロファイルを生成し、それをその構成に使用することができます。 [TestFlightの使用](https://developer.xamarin.com/guides/ios/deployment,_testing,_and_metrics/testflight/) –

+0

Xamarin.iOSタスクでは、署名とプロビジョニングはファイルコンテンツを使用するように設定されていますが、すべてのフィールド空白です。プロジェクトのiOSバンドル署名では、ビルド設定に応じて署名IDは開発者(自動)または配布(自動)になります。プロビジョニングプロファイルは自動です。プロビジョニング(プッシュ通知なし)が機能しています。 Custom Entitlementsは、両方の設定で 'Entitlements.plist'に設定されています。 'Entitlements.plist'を' Entitlements.developer.plist'と 'Entitlements.distribution.plist'にフォークするはずですか? –

+0

これを試して結果を確認することができます。 –

答えて

2

Entitlements.plistを削除し、Entitlements.developer.plistEntitlements.production.plistを追加します。 iOS Bundle Settingsで、ビルド構成に基づいてCustomer Entitlementsに対応するplistファイルを入力します。

+0

標準テンプレートまたはXamarinドキュメントには、この方法については何もありません。 Xamarinが別のアプローチをしているかどうか疑問に思います。しかし、それは動作します。 –

関連する問題