Xcode でアプリアイコンの複数セットを設定する方法 --- AppStore アイコン A/B テストの実践

作者: iHTCboy

最近、Apple は App Store の製品ページに新機能を導入しました。この機能では、アプリの製品ページのさまざまなバージョンで異なるアイコンが使用され、A/B テストを通じて最も効果的なバージョンが見つけられます。しかし、Apple のドキュメントには、Xcode で複数のアイコンのセットを統合する方法についての詳細なチュートリアルが記載されていません。これは、iOS テクノロジー開発の学生が読むのに適したこの記事の内容です。

1. 背景

2021 年 12 月 8 日、AppleApp Store 製品ページの新機能を開始しました。App Store では、開発者はアプリ製品ページのさまざまなバージョンにさまざまなアイコン、スクリーンショット、アプリのプレビューを使用でき、A/ を通じてその効果を確認できます。 B テストのベスト版。読者の中には、以前の記事「AppStore の新機能の解釈、そのときの質問は「さまざまなアプリ アイコンをテストし、新しいアイコンを送信するためのアプリ レビュー プロセスとは何ですか?」という質問です。

App Store の製品ページを最適化する準備をする - WWDC21ビデオには、次のような一節があります。

また、アプリ アイコンのバリエーションをテストするには、現在公開されているアプリ バージョンのバイナリにアイコン アセットを含める必要があるため、それに応じてアプリのリリースを準備するようにしてください
。バリアントでは、現在公開されているアプリ バージョンのバイナリにアイコン セットを含める必要があるため、それに応じてアプリ バージョンを準備してください。

1.1 Xcode は複数のテスト アプリ アイコン セットを統合します

さまざまなアイコン セットをアプリに含めるにはどうすればよいですか? まず最初に、Xcode 13 ベータ版について考えましたが、 Apple のドキュメントXcode 13 Beta 3 Release Notes | Apple Developer Documentationで次の文章を見つけました。

アセットカタログ

新機能

実行時に、アプリはアセット カタログの iOS アプリ アイコン アセットを代替アプリ アイコンとして使用できるようになりました。新しいビルド設定「すべてのアプリ アイコン アセットを含める」は、Xcode がビルドされた製品にすべてのアプリ アイコン セットを含めるかどうかを制御します。が無効になっている場合、Xcode にはプライマリ アプリ アイコンと、新しい設定「代替アプリ アイコン セット」で指定されたアイコンが含まれます。アセット カタログ コンパイラーは、
実行時にビルドされた製品の Info.plist に適切なコンテンツを挿入します。(33600923)を使用すると、アプリはアセット カタログから iOS アプリ アイコン アセットをバックアップ アプリ アイコンとして使用できるようになります。新しいビルド設定「すべてのアプリ アイコン アセットを含める」は、Xcode がビルド製品にすべてのアプリ アイコン セットを含めるかどうかを制御します。この設定を無効にすると、Xcode にはメイン アプリ アイコンに加えて、新しい設定「代替アプリ アイコン セット」で指定されたアイコンが含まれます。アセット カタログ コンパイラは、適切なコンテンツをビルド製品の Info.plist に挿入します。(33600923)

結論から先にお話しますと、複数のアプリアイコンの統合を実現するには、Xcode 13 ! Xcode 13 ! Xcode 13 !に依存します。

2、テキスト

Xcode 13 より前では、iOS アプリのアイコンを動的に切り替える場合は、Info.plist にCFBundleAlternatelcons関連。アプリアイコンの複数のセットが必要な場合は、多くのタグを追加する必要がありますが、これは直感的で効率的ではありません。

そこで、Xcode 13 からは、直感的でアイコンの管理に便利な AppIcon アイコン テンプレートをプロジェクトAssets.xcassets内に。

2.1 複数のアプリアイコンセットを追加する方法

まず第一に、それを直接行う方法について話しましょう。それは複雑ではありません。前回の記事で注意点をまとめてみましょう。

Xcode13-Alternatelcons-1.jpg

アプリのアイコンを追加するのと同じように、必要なアイコン セットをすべてAssets.xcassetsに。

次にInclude all app icon assets、 に変更しますYES(このフィールドには Xcode 13 以降が必要であることに注意してください。)

Xcode13-Alternatelcons-2.jpg

オプションInclude all app icon assets設定の役割は、パッケージ化するときにアセット カタログ コンパイラがすべてのスペア アイコンをアセット セットにコンパイルするかどうかを決定することです。

したがって、簡単に要約すると、次のようになります。

  1. Xcode 13 の使用
  2. Assets.xcassetsテストアイコンの複数のセットを作成し、対応するアイコンを追加します
  3. Include all app icon assetsに設定YSE

2.2 原理解析ソリューション

複数のアイコンセットが正常に追加されたかどうかを確認する方法

成功を確認するには、Xcode が何をしたかを知る必要があります。Include all app icon assetsを に変更することYES、Xcode はいくつかのことを行います。

  • アイコンの各セットの 60x60@2x および 60x60@3x の 2 つの iOS アプリ アイコンをAssets.carファイル
  • アイコンの各セットの 60x60@2x および 60x60@3x の 2 つの iOS アプリ アイコンをパッケージ本体のディレクトリに配置します。
  • Info.plist のCFBundleAlternateIconsフィールドの下に名前の Key-Value として代替アイコンを追加します。

したがって、この 3 つの側面から検証することができます。

パッケージ化後、パッケージ本体の Info.plist ファイルのアイコン ファイル (iOS 5) 設定に、CFBundleAlternateIcons対応する

Xcode13-Alternatelcons-3.jpg

Assets.carファイルにアイコンが含まれているかどうかで確認することもできるので、ここでは繰り返しません。

いくつかの予備のアイコンのみを使用する

バックアップアイコンのみを使用するようにAlternate App Icon Sets設定。前提条件として、Include all app icon assetsに設定しますNO

Xcode13-Alternatelcons-4.jpg

上の図では、バックアップ アイコンは 3 セットのみ指定できます。以下の点に特別な注意を払う必要があります。

  • 塗りつぶされたアイコン セットの名前Assets.car
  • 間違った名前または存在しない名前が入力された場合、Xcode はそれを無視し、エラーを報告しません。

したがって、上記の確認方法で名前が正しいことを確認できます。

注: に設定Include all app icon assetsするYSE、Xcode はAlternate App Icon Sets設定された。

透明なアイコンは使用しないでください

Xcode13-Alternatelcons-5.jpg

上の図に示すように、透明な領域のある画像を使用すると、最終的に表示されるアイコンの背景は黒になります。

Xcode13-Alternatelcons-6.jpg

1024 アイコンは JPG 形式を使用しません

1024x1024のストア画像、jpgをメインアイコンとして使用できます。png 形式を使用する場合、透明領域を含めることはできません。そうでない場合は、ipa パッケージ本体をアップロードするときにエラーが報告され、報告できません。

Xcode13-Alternatelcons-7.jpg

代替アイコンはjpgは使えません!JPGは使えない!JPGは使えない!

レポートすると、エラーがレポートされます。

Dear Developer,

We identified one or more issues with a recent delivery for your app, "斗罗大陆:魂师对决" 2.3.1 (2.3.1). Please correct the following issues, then upload again.

ITMS-90033: Invalid Image - - Image found at the path 'TestAIcon-1x~marketing-0-7-0-85-220.jpeg' referenced under key 'CFBundleAlternateIcons' is not a valid PNG file

したがって、バックアップ アイコンの 1024x1024 は PNG 形式でなければなりません。

アイコン切り替えのコード

最後に、バックアップ イメージが構成され、有効であることが確認されているため、コードで呼び出してバックアップ アイコン テストを切り替えることもできます。

代替アイコンを設定する場合は、アイコン セットの名前を 1 行のコードで渡すだけです。

UIApplication.shared.setAlternateIconName("Rainbow")

デフォルトのアイコンに戻すコード:

UIApplication.shared.setAlternateIconName(nil)

最後に、上記の構成例を GitHub にアップロードし、参考用に ObjC、Swift、および SwiftUI のバージョンを提供しました。

Xcode13-Alternatelcons-8.jpg

より柔軟な構成

Include all app icon assetsXcode の対応する buildSettings の名前は でASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETSAlternate App Icon Sets対応するフィールドは ですASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMESPrimary App Icon Set Nameに対応するアプリのメインアイコンを設定するフィールドもありますASSETCATALOG_COMPILER_APPICON_NAME

実際、これらのフィールドは Xcode 13 の GUI インターフェイスにマップされます。

Xcode13-Alternatelcons-9.jpg

これは何が良いのでしょうか?複数のアイコン セットでデータをテストした後、予備のアイコンをメイン アイコンとして使用することが必要になる場合があります。Generalパネル予備のアイコン セットをメイン アイコンにすばやく変更できます。

Appleのバックグラウンド設定

複数のアイコン セットが含まれるパッケージは、[Apple Background] タブのサブタブ产品页优化複数のアイコン セットが表示される前に、パッケージ本体をレビューのために送信するプロセスに従ってレビューする必要があることに注意してください。App Icon

Xcode13-Alternatelcons-10.png

具体的には、複数のアイコン セットのテスト ソリューションを構成する場合は、Apple のドキュメント「構成ソリューション - App Store Connect ヘルプ」を参照してくださいここでは拡張しません。

要約する

Xcode 13 は、代替アイコンの複数セットAssets.xcassetsの構成を。これにより、開発者の面倒な構成が軽減され、開発エクスペリエンスが向上します。将来的には、より多くの開発者がそれを試すことを願っています。複数のアイコン セットは、ユーザーのカスタマイズ ニーズを満たすことができます。ある程度。

複数のアプリ マテリアルのセットに対して A/B テストを実施して、最も効果的なマテリアルを見つけることは、製品を反復的に最適化する優れた手段です。誰でもすぐに試せる、找出最具吸引力的版本より魅力的で効率的なApp Storeの製品ページ!

最後に、「2021年ナゲッツ人気チームリスト」に弊社も参加させていただきましたので、皆様もぜひ応援していただければと思います!2022 年も革新的になるよう応援してください~

参考

おすすめ

転載: blog.csdn.net/iOSTeam37/article/details/122108956
おすすめ