コマンドラインxcodeBuildを使用してProvisioninging_Profileを指定するエラー
-
27-10-2019 - |
質問
Xcodeビルド設定で指定されているコード署名IDとプロビジョニングプロファイルをコマンドラインで指定したものをオーバーライドするのに苦労しています。
私は現在やっています:
xcodebuild -target "#{XTARGET}" -sdk iphoneos#{SDK_VERSION} -configuration #{config} CODE_SIGN_IDENTITY="#{DEVELOPER}"
Xcodeビルド設定が「コードサインはない」に設定されている場合、これは完全に機能します。しかし、開発者として指定しているもの以外のアイデンティティに設定されている場合、失敗します。このスクリプトでビルドを作成するためにXcodeを開けたくないことに注意してください。しかし、現在、ビルド設定が「コードサインをしないでください」と書かれていることを確認する必要があります。
XcodeBuildを介してプロビジョニングプロファイルを指定する方法を見つける必要があると思いますが、書くときは次のとおりです。
xcodebuild -target "#{XTARGET}" -sdk iphoneos#{SDK_VERSION} -configuration #{config} CODE_SIGN_IDENTITY="#{DEVELOPER}" PROVISIONING_PROFILE="#{PROFILE}"
コマンドは失敗し、プロビジョニングプロファイルを見つけることができないと言います。適切な場所にありますが。フルパス、相対パス、ファイル名だけを指定しようとしました。 Xcrunコマンドでこのプロファイルを指定すると機能します。しかし、それはXcodeBuildではいけません。
何か案は?
解決
答えを見つけたかどうかはわかりませんが、このようにわかりました。ローカル(マシンに)プロビジョニングプロファイルに一意の識別子があり、プロビジョニング_Profile設定に渡すことができます。この文字列を見つけることができますxcodeを開いて、「コード署名」(ビルド設定)でコードサインを選択します。コード署名値(プロビジョニングプロファイルに関連付けられている)を選択した後、ポップアップに署名するコードのポップアップに、「その他...」を選択した場合、次のようなものが表示されます。
iPhoneディストリビューション:ABCDEFJ-1234-5678-A382-ABDEWKEKEKE
その2行目( 'abcd ...')を取り、xcodeのprovisioning_profileコマンドにそれを配置すると、動作するはずです。ただし、プロビジョニングプロファイルを更新する場合は、その値を決定し、Xcodeに渡すものを更新する必要があると思います。