質問

デバイス用にビルドしようとすると、このエラーが表示されます:

コード署名エラー:アイデンティティ「iPhone Distribution」はどのプロファイルのどのアイデンティティとも一致しません

私は:

  • リリース用ではなく開発用のビルド。
  • 3.1.2用のビルド
  • SDK 3.1.2の実行

私は持っています:

  • 有効な証明書を取り消して再発行した
  • 明示的なアプリ名(com.mycompany.appname)で新しいAp IDと新しい関連付けられたプロビジョニングプロファイルを作成し、バンドル識別子をそれに一致させました(com.mycompany.appname)。
  • コード署名IDとして作成した特定のプロビジョニングプロファイルを選択しました。 (念のため、他のすべてのCSIをアンインストールしました。)繰り返しになりますが、「iPhone Distribution」選択されていません!

また、この問題のために(クリーンビルドがあったとしても)コードのビルドを開始しないことも規定する必要があります。そのため、デバイスにインストールしようとしたときにこのエラーがスローされません。

この問題について他のStackOverflowスレッドも読みましたが、開発用ではなく配布用に構築されているようです。

ご協力いただければ幸いです...

役に立ちましたか?

解決 3

私は何日もかけてすべてを試してみましたが、ようやく新しいプロジェクトを作成して、すべてのソースファイルに追加し直すことにしました。当時は長いショットのようでしたが、うまくいったようです。理由はわかりませんが、すべてが順調に動作しています。

他のヒント

3.1.2をインストールしておらず、SDKを更新していない(またはその逆)ことは確かですか?マイナーバージョン番号は 重要であり、不一致があるとこのエラーが発生する可能性があります。

他の誰かが投稿した解決策を実際に見つけたことはないので、この問題を修正するために私がやったことを以下に共有します。

やったのは、 '。xcodeproj'のパッケージの内容を表示し、そこで 'project.pbxproj'ファイルを手動で編集することでした。

「XCBuildConfiguration」というセクションを探してください。そうすれば、すべての異なる構成を確認できるはずです。次のようなコード署名に関連するものを手動で削除しました。

CODE_SIGN_ENTITLEMENTS = dist.plist;
CODE_SIGN_IDENTITY = "iPhone Distribution: xxxx yyyy";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution: xxxx yyyy";
PROVISIONING_PROFILE = "zzzzzzzzzzzzzzzzzzzzzzzz";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "zzzzzzzzzzzzzzzzzzzzzzzz";

したがって、残ったのは次のとおりです。

buildSettings = {
                ALWAYS_SEARCH_USER_PATHS = NO;
                COPY_PHASE_STRIP = NO;
                GCC_DYNAMIC_NO_PIC = NO;
                GCC_OPTIMIZATION_LEVEL = 0;
                GCC_PRECOMPILE_PREFIX_HEADER = YES;
                GCC_PREFIX_HEADER = xxx_Prefix.pch;
                INFOPLIST_FILE = "Info.plist";
                PRODUCT_NAME = xxx;
            };

他の構成についても、コード署名に関連するものがある場合は削除する必要があります

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top