XCode の「アーカイブ」コマンドを実行すると、見つからないファイルに関する 7 つのエラー メッセージが表示されます。ほとんどはそこにあるはずの起動ファイル用ですが、1 つにスペルミスの「Portait」が含まれています。
warning: Icon specified in the Info.plist not found under the top level app wrapper: Default-Portait~ipad.png (-19007)
Unable to validate your application. - (null)
数か月前に間違ってそのファイル名を入力しましたが、プロジェクトから削除したと思っていました。これが私のアプリの「Info.plist」ファイルです。Icon file以外にアイコンエントリがないことに注意してください。
これが私のターゲットの概要です。起動イメージを指定しました。
新しく作成されたアーカイブ内の「Info.plist」ファイルを見ると、アイコンの完全なリストが含まれています。ここではアイコン ファイル (iOS 5)を示していますが、リストは [アイコン ファイル]の下に複製されています。「Portait」のスペルミスがあり、いくつかの重複があります。めちゃくちゃです。
XCode が「Info.plist」のコンテンツを自動的に生成することは知っていますが、この長いファイル名のリストはどこから来たのでしょうか? また、それらが生成されないようにするにはどうすればよいですか?
私が試したこと
- 「Clean」を実行して XCode の「DerivedData」ディレクトリを削除しましたが、警告メッセージと偽の Info.plist エントリが残ります。
- ローカライズされた「InfoPlist.strings」を確認しましたが、行のみが含まれています
/* Localized versions of Info.plist keys */
。 - 「.xcodeproj」パッケージの内容を調べましたが、検索しようとしているファイルについての言及は見つかりませんでした。
- アイコンファイルの空の配列を「Info.plist」に追加するか、必要なファイルの名前を正確に追加しようとしました。アーカイブすると、不正な名前と重複した名前が最後に追加されます。
- 私はターゲットを複製しようとしました(いつものように、既存の
Info.plist
ファイルを複製しました)。新しいターゲットをアーカイブすると、同じエラーが発生しました。 - ビルド設定の前処理 Info.plist ファイルがオフになっていました。スイッチを入れてみました。違いはありませんでした。
- Build Setting Expand Build Settings in Info.Plist File をオフにしてみました。ファイル「${EXECUTABLE_NAME}」を実行しようとしていることがわかりました。「Info.plist」に移動し、実行可能ファイルを「${EXECUTABLE_NAME}」からハードコードされたテキスト値に変更し、他の「${...}」エントリも手動で置き換えました。それにもかかわらず、「${EXECUTABLE_NAME}」を実行しようとし続けます。おそらく、アイコン設定に追加しているものは何でも、実行可能ファイル名を上書きしています。
むしろやりたくないこと
を含む、期待される名前のファイルをプロジェクトに追加することで、おそらく警告を抑制することができますDefault-Portait~ipad.png
。そもそもこれらの名前が「Info.plist」に追加されるのをやめたいと思います。これらの重複したエントリは、後で他の問題を引き起こす可能性があるためです。
その他の詳細
このプロジェクトは 2011 年初頭に作成され、XCode の新しいバージョンに徐々に移行されています。現在、XCode バージョン 4.3.2 (4E2002) で開いています。