web-dev-qa-db-ja.com

Xcode9 iOS11アプリリリースにCFBundleIconNameがありません

IOS 11 SDKで構築されたXcode 9を使用して、私たちのアプリの新しいバージョンをリリースするのに苦労しています。バイナリのアーカイブとアップロードは問題なく動作します。ビルドはiTunes Connectのアクティビティの下に「処理中」として表示され、消えてしまい、次のような電子メールが返ってきます。

開発者各位

「」の最近の配信に1つ以上の問題が見つかりました。配信を処理するには、次の問題を修正する必要があります。Info.plist値が欠落している - Info.plistキーCFBundleIconNameの値がバンドル ''に欠けています。アセットカタログ内にアイコンを提供するアプリも、このInfo.plistキーを提供する必要があります。詳細については、 http://help.Apple.com/xcode/mac/current/#/dev10510b1f7 を参照してください。これらの問題が修正されたら、修正されたバイナリを再配信することができます。よろしく、App Storeチーム

リンクはアセットバンドルに関する情報を提供します。 CFBundleIconNameキーをプロジェクト名または画像ファイル名に設定して、もう一度アプリを送信しました。しかし、私はまだ上記と同じ電子メールを受け取ります。

援助の提案は大歓迎です。

66
ErAcube

私は、Xcode 9 iOS 11ビルドではiTunes Connect App Iconをバイナリ自体にバンドルする必要があることを考え出しました。これは、Xcodeの以前のバージョン(XCode 8.3.3以前)で直接iTunes Connectに追加されたものです。

App Storeを通じてアプリを配布する場合は、XcodeプロジェクトにあるアセットカタログにApp Storeアイコンを追加してください。アイコンの位置はプラットフォームによって異なります。

Xcode 8.3.3以前を使用して構築されたiOSおよびwatchOSアプリの場合は、iTunes ConnectにApp Storeアイコンを追加します。 macOSおよびtvOSアプリケーションの場合は、App StoreアイコンをXcodeプロジェクトに追加しますが、アセットカタログ内の場所はXcode 9以降で構築されたアプリケーションとは異なります。

必要なApp Storeアイコンは、アプリバンドルにあるアセットカタログに配置する必要があります。

Adding App Store Icon

そのため、CFBundleIconNameはAppIcon(デフォルト値)または設定した値に設定する必要があります。

その画像だけを追加してもiTunes Archiveのアップロード処理には合格しないため、次のサイズのApp Icons画像をすべて追加する必要があります。

  • 20pt 1倍、2倍、3倍
  • 29pt 1倍、2倍、3倍
  • 40pt 1倍、2倍、3倍
  • 60pt 1倍、2倍、3倍
  • 76ポイント1倍、2倍
  • 85.5pt 2倍
  • 1024pt 1倍

それでは、アセットカタログを使ってアプリのアイコンを指定しましょう。

30
ErAcube

私は一日中そして夜に私が考えることができるあらゆる順列を試みることに苦労して、そしてこの解決策をついに見つけました - うまくいけばこれは誰かがこの悪夢を経験するのを防ぐでしょう。

私のアプリは以前はxcassetsカタログを使用していなかったので、File - New - File ...を使用してファイルの種類からアセットカタログを選択することによってこの問題に対処しようとするとき、プロジェクトに追加しました。そしてxcodeプロジェクトでそれを選びました。それから右の領域を右クリックして、App Icons&Launch Images、そしてNew iOS App Iconの順に追加し、それから私はあなたの1024 x 1024イメージをアプリストア用の井戸にドラッグしました。しかし、アーカイブしてストアに送信した後も、まだ拒否されたメールがあります。

Info.plist値がありません - Info.plistキーCFBundleIconNameの値がバンドルにありません。かくかくしかじか...

私はまた、CFBundleIconNameで知られている "Icon Name"のInfo.plistにキーを追加し、それをプロジェクト内の私の1024x1024の画像と一致する文字列のファイル名に設定しました。しかし、IPAの内容をチェックしてもすべてが正しく配置されているにもかかわらず、どれもうまくいきませんでした。

最後に、Assets.xcassetsという名前のカタログからAppIconを削除して空にし、問題を解決するために次の手順を実行しました。

アプリ名をクリックして[全般]タブを選択し、[アプリアイコンと画像の起動]セクションで[アプリアイコンソース]の横にあるボタンをクリックしてアセットカタログを使用することでアプリのメイン設定に移動します。あなたのアセットカタログ - 私の名前はAssets.xcassetsです - そしてそのポップアップのボタンでアプリを変換(移行)します - 起動アイコンを変換するボックスもチェックしました - App Icons SourceとLaunch Imagesが完成したらソースはドロップダウンリストに名前を持ちます。

それをクリックしてアセットカタログに移動してください - もう一度Assets.xcassetsをクリックしてからAppIconセクションをクリックし、App Store iOS 1024pt well/slotにあなたの1024x1024イメージをドラッグしてください。アプリを最後にアーカイブしてApp Storeに送信します。その時点で、私があなたのアプリの拒否について電話をかけ始めたときに、それ以上地獄からEメールが届かなくなり、iTunesConnectに戻ってアプリを送信できます。

幸運 - 私はあなたがちょうどパンアウトしなかった合理的な修正をたくさん試したときあなたがこの主に不可解なエラーで感じているかもしれない痛みに共感します。そのようなことは時々ソフトウェアエンジニアの人生です...;)

それが簡単だったならば、誰もがそうするでしょうね。 ;)

60
Richie Hyatt

最も簡単な解決策は、plistにCFBundleIconNameキーを追加し、アセットカタログのすべてのAppIconスライスを埋めることです。

Info.plist:

<key>CFBundleIconName</key>
<string>AppIcon</string>

enter image description here

enter image description here

ここでWorking AppIcons Assetsをダウンロードしてください

36
Guru

自分のアプリの新しいバージョンのバイナリを送信したときはいつでも同じメールを受信して​​いました。私はここにリストされているすべての救済策を試しましたが、何もうまくいきませんでした。それから私はもう一つの変更を加えました。

ターゲット内。 。設定をビルドします。 。 。アセットカタログコンパイラ - オプションセクションで、アイコンを含むアセットカタログの名前がに表示されていることを確認してください。アセットカタログアプリアイコンセット名何らかの理由で、私のアセットカタログアプリケーションアイコンセット名が空白でした。

12
GlennRay

私は同じ問題を抱えており、それを以下のように解決しました。

これがステップバイステップのガイドラインです。

ステップ1:

1024 * 1024.pngでアイコンを作成する

ステップ2:

このpngを https://www.appicon.build/ のWebサイトにアップロードして、画面にドラッグアンドドロップします。

enter image description here

ステップ3:

メールアドレスを入力するように求められます。それを入力して数秒後、あなたはあなたのメールボックスに必要なすべての画像サイズを取得します。そのzipフォルダをダウンロードして解凍します。

ステップ4:

Xcodeのプロジェクトに戻り、この解凍したフォルダー(AppIcon.appconset)をxcodeプロジェクトのresourcesフォルダーに追加します。

enter image description here

ステップ5:

Asset.xcassetsフォルダをダブルクリックして、生成された画像から必要な画像を2倍と3倍の画像の画像プレースホルダにドラッグアンドドロップします。

enter image description here

準備できた!...

9
casillas

IOS 11以降のSDKで構築されたアプリは、アセットカタログにアプリのアイコンを提供し、このInfo.plistキーの値も提供する必要があります

アセットカタログのない古いプロジェクトでは、Appstoreへの送信中に問題が発生します

[プロジェクト] - > [ターゲットのプロパティ] - [全般]タブ - > [アプリアイコン]と[画像の起動]の順にクリックします。アプリアイコン - > Use Asset catalogを選択すると、警告付きで変換(移行)を要求され、.xcassetsファイルが作成されます。起動画像も変換するには、チェックボックスをオンにします。
完了すると、App Icons SourceとLaunch Images Sourceのドロップダウンリストに名前が表示されます。アプリのアイコンやその他のアイコンをそれに追加する

9
Neha Vipin

これでIOS 11に、サイズ1024 x 1024のプロジェクトに新しいアイコンを追加する必要があります。

アイコンファイルがソースコードバンドルのリソースフォルダから削除され、info.plistのアイコンファイルキーもクリアされていることを確認します。下記のようにplistにCFBundleIconNameキーも追加します。

Info.plist:

<key>CFBundleIconName</key>
<string>AppIcon</string>

また、[プロジェクト] - [ターゲット] - > [ビルド設定] - > [アセットカタログコンパイラ] - セクションで、アイコンを含むアセットカタログの名前が[アセットカタログアプリケーションアイコンセット名]に表示されていることを確認します。

8
Neha Vipin

私も遭遇しました "Info.plist値がありません - Info.plistキーCFBundleIconNameの値がバンドルにありません..." 誤解し、うまくいけば次の人を助けるために簡潔な答えを残したかった。

アプリはアセットカタログを使用していませんでした。それはこのエラーが言うことではないですが、それはこの問題を解決するのに必要であるということですが値を追加する方法は重要です。この欠けているkey\valueを手動で.plistに追加するだけでは不十分です。それ以上のものがあります。また、あなたの.plistからCFBundleIcons値を削除する必要があります。これは手動で行うこともできますが、XCodeインターフェイスを使用してプロジェクトのプロパティ - 一般的なアプリアイコンと起動イメージからこれを編集することをお勧めします。それが私の仕事の仕方です。

以下は、これが私の.plistに加えた変更のスクリーンショットです。

更新された。PList

アプリアイコンと起動画像

まだ持っていない場合は、新しいアセットカタログをプロジェクトに追加します。
ナビゲータウィンドウ上部のアプリ名をクリックします
一般タブを選択
[アプリアイコンと画像の起動]セクションまでスクロールします。
[資産カタログを使用する]ボタンをクリックします
注:私は自分のアセットカタログとiOSアプリアイコンイメージセットを作成しましたが、既存のイメージカタログにリンクすると、空の値\ imagesを持つ新しいイメージセットが作成されたため、うまくいきませんでした。私はそれらをすべて削除し、このプロセスで私に代わってそれらを作成させる必要がありました。この問題を解決するためにアセットカタログを追加するだけの場合は、手動でイメージセットを追加しないで、このプロセスで作成してください。

クリックしてアプリを変換/移行します
ボタンをクリックした後、何も自動的に更新されませんでした。移動して設定画面に戻ると、ドロップダウンリストに値が割り当てられています。

新しい資産カタログをクリックして開きます。
[AppIcon]セクションをクリックして、必要な画像を適切な場所にドラッグします。

App StoreのiOS 1024ptアイコンおよびその他のiPhone\iPad\Universalアプリに必要なアイコンには、1024 x 1024の画像が必要です。 1024x1024pxの画像はマーケティングアイコンとも呼ばれます。あなたはそれなしであなたのアプリを提出することはできません。

これでアプリをアーカイブして、App Storeに送信できるようになりました。

4
R. Bauer

以下の手順に従ってください。

  1. プロジェクトに新しいファイル>> Asset Catlogを追加します。
  2. 後藤XCODE >>一般>> App Iconsであなたのプロジェクトをクリックしてください。 スクリーンショット を参照してください。これでAppIConとLaunchImageの仕様がアセット内に自動的に作成され、その後Appstoreアイコンとその他のアイコンをドラッグアンドドロップできます。

  3. また追加
    <key>CFBundleIconName</key>
    <string>AppIcon</string>

あなたのplistファイルのこのエントリ。

バイナリをiTunesにアップロードします。

3

上記の答えが役に立たなかった人のために(これに頭壁の叩きをかなり費やした):

アセットディレクトリのターゲットメンバーシップを必ず確認してください。ここでメンバーシップを正しくリンクしないと、これと同じ超一般的なエラーが発生します(Appleはエラーメッセージについて何かするべきです)。

enter image description here

ターゲットメンバーシップは、あなたがアイコンを使用しているターゲットと直接相関するはずです。たとえば、この単一のディレクトリをメインアプリと視聴アプリ資産の両方に使用します。適切なメンバーを選択してこれを指定する必要があります。

Plistを編集する必要はまったくありません。これらの答えのほとんどは誤解を招くものです。

これがヒットした人に役立つことを願っています!

3
hisairnessag3

私はようやくCFBundleIconNameのようなinfo.plistにキーを追加しないことを要求するこの問題に対するきれいな解決策を思い付きました。私は、SDK 11.2に対して構築するためにアプリストア内の古いアプリを更新している間にこれを行いました(そして、かなりのフラストレーションが関係していたと私は信じています)。私はPC上のVisual StudioでXamarinを使用していますが、このソリューションは他のIDEやフレームワークでも動作するはずです。 Xコードこのソリューションの要旨は、info.plistファイルとResourcesフォルダが、アプリのアイコンと起動画像に関する限り、もはや役割を果たす必要がないということです。実際には、info.plistファイルからCFBundleIconFilesキーを削除することができ、それはあなたのプロジェクトに少しの違いも生まないでしょう。

あなたが従う必要があるステップはここにあります:

  1. アプリのアイコンをコピーして画像を起動し、別の場所に保存します。
  2. クリーンスタートのためにアプリアイコンへの参照を削除し、info.plistから画像を起動します。これはCFBundleIconFilesキーの下の値を削除することを意味します。
  3. アプリのアイコンを削除し、Resourcesフォルダから画像を起動します。
  4. 「資産カタログ」の下で宣言した「資産」または「メディア」を削除するには、削除オプションを使用します。
  5. Assets.xcassetsまたはMedia.xcassetsという名前のフォルダ(または同様の名前の.xcassetsフォルダ)が、プロジェクトにまだ存在している可能性があります。それらはResourcesフォルダの外側か内側にあります。すべての.xcassetsフォルダを削除します。
  6. メモ帳などのエディタ(Visual Studioの場合は.csproj)でプロジェクトファイルを開き、.xcassetsフォルダ内のファイルを参照する参照があるかどうかを確認します。そのような参照をすべて削除してください。また、このファイルのResourcesフォルダの下に、アプリアイコンを指す参照や起動画像がないことを確認し、それらも削除します。
  7. XSAppIconAssetsおよびXSLaunchImageAssetsキーがinfo.plistに存在しなくなっていることを確認してください。まだ存在する場合は削除します。
  8. この時点で、以前のファイルやアプリアイコンへの参照を削除し、プロジェクトから画像を起動しました。まだ存在する場合は、戻って削除してください。今から始めようあなたのプロジェクトに.xcassetsフォルダーを作成する 'Asset Catalogs'の下に新しい 'Asset'または 'Media'を作成してください。手順1のアプリアイコン(および必要に応じて起動画像)を新しい.xcassetsフォルダの下の各フォルダにコピーします。必要な画像がすべて含まれていることを確認してください。
  9. Info.plistに、作成した新しい「資産」のXSAppIconAssets(および必要に応じてXSLaunchImageAssets)キー値が含まれていることを確認します。プロジェクトファイル(Visual Studioでは.csproj)には、新しい 'Asset'に追加した各画像への参照が含まれているはずです。プロジェクトで必要とされている以上の余分な画像は必要ありません。アセットから余分な画像を削除することをお勧めします。
  10. 他のソリューションで説明したようにCFBundleIconNameという名前のキーを追加した場合は、info.plistからこのキーを削除してください。必須ではありません。これで、アプリをストアに送信する準備が整いました。
2
Omair

私の状況では。このページでこれらのことをすべて終えたら、もう一度プロジェクトをアーカイブしてください。

1

すべてのアプリ開発者は有名な "Icon Dog"を使用しています

(彼らが名前を変えたのは残念だ!)

enter image description here

https://iTunes.Apple.com/us/app/app-icon-set-creator/id1052532083?mt=12

これは、iOS開発者によって使用されている最も人気のあるアプリの1つであり、カルト的なものです。

それはすぐにすべての問題を解決します。

1
Fattie

Visual Studio 17(v-15.2)のバージョン> 15.2をアップデートすると、AssetCatalog> Media> AppIconsにApp-Icon-1024 x 1024プレースホルダーが表示されます

enter image description here

1
ZygoteInit

Info.plistを編集する必要はありません。アイコン関連のエラーは、images.xcassets内のAppIconのすべての画像プレースホルダーを入力することで解決されます。

1
zeeawan

IOS 11アプリ用のXcode 9.2では、いくつかの点を明確にする必要があります。

1 - このエラーは、アセットカタログにアイコンアセットがないことによるものです。

(アセットカタログのないアプリを送信すると、このエラーが発生します)。

2 - このエラーは、必要なアイコンで資産カタログを追加することによって解決されています。

(私の場合、それはiPhone専用のアプリでした。私は120倍と180倍のプレースホルダー画像を追加しました)。

3-このエラーは1024x1024 "App Storeアイコン"とは関係ありません。

(あなたが大きい店のアイコンを忘れると、このエラーではなく、個別の特定のエラーが表示されます)。

4iOS 11用に書かれたXcode 9 +)であっても、Appleのドキュメントとは反対に、App Storeアイコンを送信するためにウェブサイトを使うこともできます。

(上記の個別のエラーは、---(アイコンがないアイコンによって引き起こされます。送信されたビルドにアイコンがないことではありません)。

5- Info.plistに欠けているCFBundleIconNameは変更されませんでした。

0
benc

私はこの問題についても多くの問題を抱えていました - 私は欠けているCFBundleIconNameと私のアイコンが見つからないというエラーで常にエラーを得ていました。だからここに私の話があります、多分それは誰かに役立つでしょう。ところで、私はXamarinでVisual Studioを使っています。

  1. AppIconsを使用してアセットカタログをプロジェクトに追加します(アセットの実際の名前は重要ではありませんが、アプリケーションアイコン用です)。必要なアイコンサイズをすべて追加してください。 「App Store」アイコンの場合、フォーラムの誰かが提案しているように、名前に@なしのアイコンを追加しましたが、100%必要かどうかはわかりません。さまざまなサイズのアイコンを生成するには、それを実行できるWebサイトやツールが多数ありますが、1024 x 1024のサイズを用意するだけで済みます。彼らは残りを生み出すでしょう。

  2. Info.plistの「Visual Assets」の下にある「App Icons」で、作成したばかりのアセットにソースを設定します。

  3. Info.plistを確認してください。 外部エディタで開かないでください、プロジェクトをビルドするとすべての変更が上書きされるためです。次の手順を実行します - ソリューションエクスプローラーでInfo.plistを右クリックし、次にアプリケーションから開く - > Generic PList Editorを選択します。

  4. 以下のエントリがあることを確認してください。

    -Property = CFBundleIconName、Type = String。値= Assets.xcassets/AppIcons.appiconset - プロパティ= XSAppIconAssets、タイプ=文字列。値= Assets.xcassets/AppIcons.appiconset

  5. Visual Studioは、何かを追加するときに、値として「Resources/Assets.xcassets/AppIcons.appiconset」を自動的に追加します。しかし私の場合、Asset CatalogはResourcesフォルダの外に作成されていたので、私のアイコンは見つかりませんでした。それで、あなたのアセットフォルダーがどこに作成されたかチェックしてください。

  6. Appleは代わりにAsset Catalogを使用しているため、CFBundleIconFilesは必要ありませんでした。

私が助けてくれたことを願っています:)

0
Sonia

私は@Omairで答えを使用しました、そしてそれはその場で注目されています、しかし私はそれからいろいろなアイコンが見つけられないというエラーを得ていました。資産カタログ作成時の問題はVS2017のバグでした。新しいアセットカタログを追加すると、カタログフォルダは/ resourcesの下ではなくプロジェクトのルートの下に作成されます。ただし、info.plistのエントリのパスは/ resourcesの下にあります。資産カタログへのパスから/リソースを削除すると、すべて正常に機能しました。これが誰かに役立つことを願っています!

0
Mark Erickson