I'm having an issue with my app icon no longer being displayed on my .manageSubscriptions sheet in Testflight. It displays fine on the .manageSubscriptionsSheet in Xcode. However, I've noticed that the .manageSubscriptionsSheet also looks a little different in TestFlight now. It used to be identical to Xcode. I believe that this may have happened when I decided to try out a new App Icon (different color/style) and deleted my old set from my app. I then ended up changing my mind and reverted back to the old icon set. Now however, .manageSubscriptionsSheet no longer shows my app icon. See below screen shots.
Xcode display of .manageSubscriptionsSheet - icon shows:
TestFlight display of .manageSubscriptionSheet - icon does NOT show. Additionally, there are two screens now instead of just the one that I see with Xcode:
enter image description here enter image description here
Has anyone else run into this problem? I've tried/done the following:
- deleting the entire icon set and re-added it
- verified that all icons are in Assets.xcassets
- verified that icons are (ios-marketing.png in particular) Color space=RGB, Color profile=sRGB IEC61966-2.1, Dimensions:1024x1024, and Alpha channel=No
- deleted derived data
- cleaned the build folder
- checked that my scheme for TestFlight has "None" for StoreKit configuration before pushing a new version to TestFlight
- checked my subscriptions in AppStore Connect - everything is there/approved like it was before
- deleted the app off of my phone and reinstalled it
- restarted my phone and reinstalled app from TestFlight
Nothing has worked so far. Any thoughts as to what I should check next?
1 Answer 1
So, I finally got the AppIcon back but I had to do a lot to make it happen. In summary, I had to basically delete my subscriptions in AppStore Connect, comment out any subscription stuff in my code, verify the app icon had the right specifications, verify that I was using the correct asset catalog, archive to AppStore Connect, recreate my subscriptions, uncomment out the subscription stuff in my code and change to the new subscription group id, and re-archive to AppStore Connect.
This seems to have been some sort of caching issue with AppStore Connect and it was the only way I could trick it to get the icon back on the .manageSubscriptionsSheet. Below is a more detailed description of the steps that I took to fix this. In conclusion, my recommendation would be to verify that your app icon is correctly formatted with the correct specifications/sizes and uploaded to AppStore Connect prior to adding any subscriptions if possible. In addition, once subscriptions are added, I would NOT change the app icon unless it's absolutely necessary.
Note: For my app, I have two subscriptions within one subscription group.
Steps taken:
Make sure the picture being used is a .png with Color Space=RGB, Color Profile= sRGB IEC61966-2.1, Alpha=No. Use all sizes in the asset catalog, not just single size
Once the icons are in the asset catalog (Asset.xcassets), right click on the 1024x1024 to "Show in Finder", and then "Get Info" to make sure it has the above specifications
Verify that the name of the AppIcon that you're using in the asset catalog is the same one on the main app target page Target -> General -> App Icons and Launch Screens. Also verify that Target -> Build Settings -> Asset Catalog Compliler - Options -> Primary App Icon Set Name has the same AppIcon name.
Verify that there are no "ghost" asset catalogs by using terminal, navigating to your project directory, and entering the command:
find . -name "*.xcassets" -print
In most cases, there should only be one asset catalog listed (besides the one used for Xcode previews).
Delete or comment out all storeKit code from Xcode (I'm not sure this step is necessary but after many attempts, this step finally seemed to work) AND delete the subscriptions (including the group) from AppStore Connect. Note: I had two subscriptions within one subscription group.
Delete any .storekit files that sync with AppStore.
Test and run in simulator to make sure that the code still works without the subscription stuff.
For your project, under Targets -> General, use a new version and build of your app (new version may have somehow forced an update of the app icon. It can be a small jump like going from version 1.0 to 1.0.1
Clean the build folder, build, save project, exit Xcode, delete derived data, open project again, clear build folder again, build, and archive to AppStore connect. Be sure that the scheme you are using does NOT have a reference to any .storekit file. Edit scheme -> Options -> StoreKit Configuration file -> "none". It should be "none" for Testflight and Release builds
Once the build uploads to AppStore Connect, go to the main Dstribution tab, and under "Build", select the build that you just uploaded and hit the Save button.
Now put back/uncomment all the StoreKit code in your project
Redo your subscriptions in AppStore Connect. Note: you will now have a new subscription group id.
Each subscription within the group should have a status of "Ready to Submit" and localizations should say "Prepare for Submission". If it says metadata missing, you are missing one of the following: localizations (either for the individual subscriptions or for the group), availability or pricing info, or the "Review Information" screenshot/notes. It must not have metadata missing or this will not work.
Edit your code and swap the new subscription group id for the old one.
Generate a new .storekit file that syncs to AppStore.
Edit scheme -> Options and select that Storekit Configuration file (this is so you can test with simulator to verify that everything works before archiving a new build)
Run and test in simulator to make sure that all your storekit stuff is working again.
Now edit scheme again and set Storekit Configuration file to "none"
Now archive and upload again to AppStore Connect
Once the build is there under TestFlight, go back to the main distribution tab (under "Build"), select the build that was just uploaded and hit the Save button. After hitting save, under "In-App Purchases and Subscriptions", select your subscriptions
Delete the old app version from whatever physical device you are using to test and re-download the new version. When you run the app, your subscription will show up as new because of the new group id. When you buy or manage the subscription, you should see the app icon.
Comments
Explore related questions
See similar questions with these tags.