Comment configurer plusieurs ensembles d'icônes d'application dans Xcode --- AppStore icon A/B Test practice

Auteur : iHTCboy

Récemment, Apple a lancé une nouvelle fonctionnalité sur la page produit de l'App Store, dans laquelle différentes icônes sont utilisées sur différentes versions de la page produit de l'application, et la version avec le meilleur effet est trouvée via le test A/B. Mais le document Apple ne donne pas de tutoriel détaillé, comment intégrer plusieurs ensembles d'icônes dans Xcode ? C'est le contenu de cet article, adapté aux étudiants en développement de la technologie iOS à lire.

1. Origines

Le 8 décembre 2021, Apple a lancé une nouvelle fonctionnalité de la page produit de l'App Store. Dans l'App Store, les développeurs peuvent utiliser différentes icônes, captures d'écran et aperçus d'application pour différentes versions de la page produit de l'application, et découvrir l'effet via A/ B Testez la meilleure version. Certains lecteurs connaissent peut-être notre précédent article Interprétation des nouvelles fonctionnalités de l'AppStore : pages de produits personnalisées et outils de test A/B , laissant cette question à l'époque : Quel est le processus d'examen des applications pour tester différentes icônes d'application et soumettre de nouvelles icônes ? ?

Dans la vidéo Préparez-vous à optimiser votre page produit App Store - WWDC21 , il y a un tel passage :

Et rappelez-vous, pour tester une variante de l'icône de votre application, vous devrez inclure les actifs de l'icône dans le binaire de la version de votre application actuellement en ligne, alors assurez-vous de préparer les versions de votre application en conséquence
. variante, vous devrez inclure le jeu d'icônes dans les fichiers binaires de la version de l'application actuellement en ligne, alors assurez-vous de préparer votre version de l'application en conséquence.

1.1 Xcode intègre plusieurs ensembles d'icônes d'application de test

Comment inclure différents jeux d'icônes dans l'application ? Tout d'abord, j'ai pensé à la version bêta de Xcode 13, puis j'ai trouvé ce passage dans la documentation d'Apple Xcode 13 Beta 3 Release Notes | Apple Developer Documentation :

Catalogues d'actifs

Nouvelles fonctionnalités

Au moment de l'exécution, votre application peut désormais utiliser les actifs d'icônes d'application iOS de son catalogue d'actifs en tant qu'icônes d'application alternatives. est désactivé, Xcode inclut l'icône de l'application principale, ainsi que les icônes spécifiées dans le nouveau paramètre "Jeux d'icônes d'application alternatifs". Le compilateur du catalogue de ressources insère le contenu approprié dans le fichier Info.plist du produit créé. (33600923) lors de l'
exécution , votre application peut désormais utiliser l'icône d'application iOS de son catalogue d'actifs en tant qu'icône d'application de sauvegarde. Un nouveau paramètre de construction "Inclure tous les actifs d'icônes d'application" contrôle si Xcode inclut tous les jeux d'icônes d'application dans le produit de construction. Lorsque ce paramètre est désactivé, Xcode inclut l'icône de l'application principale, ainsi que l'icône spécifiée dans le nouveau paramètre "Ensemble d'icônes d'application alternatif". Le compilateur du catalogue de ressources insère le contenu approprié dans le fichier Info.plist du produit de génération. (33600923)

Permettez-moi de parler d'abord de la conclusion : l'intégration de plusieurs ensembles d'icônes d'application dépend de Xcode 13 ! Xcode 13 ! Xcode 13 !

Deux, le texte

Avant Xcode 13, si vous souhaitez changer dynamiquement d'icônes pour l'application iOS, vous devez ajouter des champs CFBundleAlternatelconsassociés pour déclarer les icônes alternatives correspondantes. Si vous souhaitez plusieurs ensembles d'icônes d'application, vous devez ajouter de nombreuses balises, ce qui n'est pas assez intuitif et efficace.

Par conséquent, à partir de Xcode 13, il est possible de créer un modèle d'icône AppIcon Assets.xcassetsdans , ce qui est intuitif et pratique pour gérer les icônes.

2.1 Comment ajouter plusieurs ensembles d'icônes d'application

Tout d'abord, parlons de la façon de le faire directement, ce n'est pas compliqué. Dans le dernier article, résumons les précautions.

Xcode13-Alternatelcons-1.jpg

Tout comme pour ajouter des icônes d'application, ajoutez simplement tous les jeux d'icônes requis Assets.xcassetsà .

Include all app icon assetsChangez ensuite pour YES. (Remarque, Xcode 13 ou supérieur est requis pour ce champ !)

Xcode13-Alternatelcons-2.jpg

Include all app icon assetsLe rôle de la configuration des options est de décider si le compilateur des catalogues d'actifs doit également compiler toutes les icônes de rechange dans l'ensemble d'actifs lors de l'empaquetage.

Donc, pour résumer brièvement :

  1. Utilisation de Xcode 13
  2. Assets.xcassetsCréez plusieurs ensembles d'icônes de test et ajoutez les icônes correspondantes
  3. Include all app icon assetsréglé surYSE

2.2 Solution d'analyse de principe

Comment vérifier si plusieurs ensembles d'icônes sont ajoutés avec succès

Pour vérifier le succès, vous devez savoir ce que Xcode a fait. En Include all app icon assetschangeant le en YES, Xcode fait plusieurs choses :

  • Emballez les 60x60@2x et 60x60@3x deux icônes d'application iOS de chaque ensemble d'icônes dans Assets.carle fichier
  • Placez les 60x60@2x et 60x60@3x deux icônes d'application iOS de chaque ensemble d'icônes dans le répertoire du corps du package
  • CFBundleAlternateIconsAjoutez une autre icône en tant que valeur-clé du nom sous le champ Info.plist

Elle peut donc être vérifiée à partir de ces trois aspects.

Après le conditionnement, vous pouvez vérifier s'il existe des ensembles CFBundleAlternateIconscorrespondants :

Xcode13-Alternatelcons-3.jpg

Cela peut également être vérifié en vérifiant si l'icône est incluse dans Assets.carle fichier , donc je ne le répéterai pas ici.

N'utilisez que quelques icônes de rechange

Peut être Alternate App Icon Setsconfiguré utiliser uniquement l'icône de sauvegarde. Pour les conditions préalables, Include all app icon assetsréglez-le sur NO.

Xcode13-Alternatelcons-4.jpg

Grâce à l'image ci-dessus, vous ne pouvez spécifier que 3 ensembles d'icônes de sauvegarde. Une attention particulière doit être portée à :

  • Le nom du jeu d'icônes rempli doit être cohérent avec le nom Assets.cardans
  • Si un nom erroné ou inexistant est rempli, Xcode l'ignorera et ne signalera pas d'erreur

Par conséquent, vous pouvez confirmer que le nom est correct grâce à la méthode de vérification mentionnée ci-dessus.

Remarque : Lorsqu'il Include all app icon assetsdoit être défini sur YSE, Xcode ignorera le contenu Alternate App Icon Setsdéfini .

Ne pas utiliser d'icônes transparentes

Xcode13-Alternatelcons-5.jpg

Comme le montre la figure ci-dessus, en utilisant une image avec une zone transparente, l'icône finale affichée aura un fond noir :

Xcode13-Alternatelcons-6.jpg

1024 icônes n'utilisent pas le format JPG

Image de magasin 1024x1024, jpg peut être utilisé comme icône principale. Si le format png est utilisé, il ne peut pas y avoir de zone transparente, sinon une erreur sera signalée lors du téléchargement du corps du paquet ipa et ne pourra pas être signalée.

Xcode13-Alternatelcons-7.jpg

Quant à l'icône alternative, jpg ne peut pas être utilisé ! Impossible d'utiliser jpg ! Impossible d'utiliser jpg !

Lors du signalement, une erreur sera signalée :

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

Par conséquent, le 1024x1024 pour l'icône de sauvegarde doit être au format PNG !

Code pour le changement d'icône

Enfin, comme l'image de sauvegarde a été configurée et vérifiée, elle peut également être appelée par code pour basculer le test de l'icône de sauvegarde :

Lors de la définition d'une icône alternative, transmettez simplement le nom de l'ensemble d'icônes, une ligne de code :

UIApplication.shared.setAlternateIconName("Rainbow")

Code à remettre à l'icône par défaut :

UIApplication.shared.setAlternateIconName(nil)

Enfin, nous avons téléchargé l'exemple de configuration ci-dessus sur GitHub et fourni des versions d'ObjC, Swift et SwiftUI pour votre référence.

Xcode13-Alternatelcons-8.jpg

Configuration plus souple

Include all app icon assetsLe nom du buildSettings correspondant dans Xcode est ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS, et le champ Alternate App Icon Setscorrespondant est ASSETCATALOG_COMPILER_ALTERNATE_APPICON_NAMES. Il existe également un champ pour définir l'icône principale de l'application Primary App Icon Set Namecorrespondant à ASSETCATALOG_COMPILER_APPICON_NAME.

En fait, ces champs sont mappés à l'interface graphique dans Xcode 13 :

Xcode13-Alternatelcons-9.jpg

A quoi bon cela? Après avoir testé les données à travers plusieurs ensembles d'icônes, il peut être nécessaire d'utiliser une icône de réserve comme icône principale. Via Generalle panneau , vous pouvez rapidement changer l'ensemble d'icônes de réserve en icône principale.

Configuration d'arrière-plan Apple

Il convient de noter qu'un package contenant plusieurs ensembles d'icônes doit être examiné en fonction du processus de soumission du corps du package pour examen avant que vous puissiez voir plusieurs ensembles d'icônes sous l' 产品页优化ongletApp Icon :

Xcode13-Alternatelcons-10.png

Plus précisément, si vous configurez une solution de test pour plusieurs ensembles d'icônes, vous pouvez vous référer à la documentation d'Apple : Configuration Solution - App Store Connect Help . Je ne m'étendrai pas ici.

Résumer

Xcode 13 prend en charge Assets.xcassetsla configuration de plusieurs ensembles d'icônes alternatives, ce qui réduit la configuration fastidieuse des développeurs avant et améliore l'expérience de développement. J'espère que davantage de développeurs l'essayeront à l'avenir. Plusieurs ensembles d'icônes peuvent répondre aux besoins de personnalisation des utilisateurs pour Dans une certaine mesure.

Effectuer des tests A/B sur plusieurs ensembles de matériaux d'application pour découvrir les matériaux avec le meilleur effet est un excellent moyen d'optimisation itérative du produit. Tout le monde peut l'essayer tout de suite, 找出最具吸引力的版本des pages produits App Store plus attractives et plus efficaces !

Enfin, nous participons maintenant à la "2021 Nuggets Popular Team List", j'espère que tout le monde pourra nous encourager ! Encouragez-nous à être innovants en 2022~

référence

Je suppose que tu aimes

Origine blog.csdn.net/iOSTeam37/article/details/122108956
conseillé
Classement