アプリ ストアに提出しようとしていた (iPad のみの) アプリを検証しようとすると、次の 3 つのエラーが発生しました。
1. iPad: アプリケーションの実行可能ファイルに必要なアーキテクチャがありません。次のアーキテクチャの少なくとも 1 つが存在する必要があります: armv7。
実際、すべてのアーキテクチャ設定に armv7 と armv7s があり、「アクティブなアーキテクチャのみをビルド」を「いいえ」に設定していました。
私にとってそれを修正したのは、このリストからarmv7を手動で削除し、armv7だけを残すことでした. その後、このエラーは消えました。
「アーキテクチャの少なくとも 1 つが armv7 でなければならない」については以上です。
2. アプリケーションがコードサインの検証に失敗しました。署名が無効であったか、許可されていない権限が含まれているか、iPhone 配布証明書で署名されていませんでした。
は ?以前は、社内でのアドホック配布用のエンタープライズ ライセンスを使用して、この iPad アプリを作成していました。今、開発者ライセンスを使用してビルドしようとしていたので、App Store にデプロイできました。
この問題を解決するには、次のことを行う必要がありました。
左側のウィンドウで私のプロジェクトをクリックします
中央のウィンドウでプロジェクト名 ([ターゲット] の下) を選択します。
ビルド設定タブを選択します
行タブのすぐ下で、「基本」オプションと「結合」オプションを選択します。
ここで、Code-Signing Identity の下で、Enterprise アカウントではなく、そのプロジェクト専用の Apple Developer アカウントに関連するコード署名を選択したことを確認する必要がありました。
3. アプリケーションから権限を抽出できません: (null)
は ?!
アプリケーションに名前が付いていた古き良き時代を覚えていますか? XCode では、アプリにバンドル名、製品名、実行可能ファイル名、およびバンドル表示名があります。
何人かの StackOverflow ユーザーがこれに注目し、違いを説明するために Apple のドキュメントの方向性を示しました...しかし、それで頑張ってください。
私にとって、この問題を修正するには、( * -Info.plist ファイル内の) 実行可能ファイル名とバンドル名が同一であり、製品名とも一致していることを確認するだけで済みました。
イライラすることに、製品名は上記のパート 2 で説明したタブの下に隠されています。つまり、[ビルド設定] タブを選択し、ヘッダー バーで [基本] と [結合] を選択します。
これが他の開発者に役立つことを願っています。これはすべて XCode 4.6.3 を使用して行われたため、iOS 7 と XCode 5 が登場する来月には時代遅れになることは間違いありません。それまでに、アプリには Nickname と MiddleName も必要になるでしょう。知るか?
マイク
www.MikesKnowledgeBase.com