Using Visual Studio Community 2019 for Mac and trying to build my Xamarin Forms app for App Store,
Build and Runs pretty fine BUT, it gives me this error while i try to upload to App Store,
ERROR: ERROR ITMS-90022: "Missing required icon file. The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format for iOS versions >= 7.0."
I tried every single solution with this google search: Xamarin iOS ITMS-90022 site: forums.xamarin.com
I Tried naming all my Icons according to Apple Developer Docs here: developer.apple.com/library/archive/qa/qa1686/_index.html
But Visual Studio converts naming to AppIcon-60x60#2x.png when i check the resulting ipa file.
Can someone please point me to right direction because honestly, it is driving me mad.
Thank you.
I Tried all things here: Xamarin iOS ITMS-90022 site:forums.xamarin.com
Here: Xamarin iOS ITMS-90022 site:stackoverflow.com
Expected: Upload without a problem.
Result: ERROR ITMS-90022: "Missing required icon file. The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format for iOS versions >= 7.0."
Answer to this problem is, using one of the ImageCropper library, when you use a library that has iOS info.plist and Icon definitions there, it automatically overrides ( i don't know why ) Icon files and if they don't have the definition for 120x120 you get this error.
Either remove the library, or get the library source, add icon files to that libraries Info.plist aswell.
you should check the info.plist.
<key>CFBundleIconFiles</key>
<array>
<string>AppIcon-120.png</string>
</array>
Remove all appicon in images.xcasesets and then recreate o
Related
I've been searching for a solution to this Xcode issue for hours! I realize there are a bunch of posts on stack overflow with the same issue, but most of them are outdated (Xcode 9 or earlier and from 2016/2017). Does anyone have a solution to this issue? I am running Xcode 11.4.1 and all of the AppIcon images are correctly set in the Assets.xcassets folder. The application runs fine when building to simulator/iPhone and it was uploading to AppStoreConnect with the same settings last version of my app (a few weeks ago).
Answer: Don't include special characters in your app's Display Name. I'm not sure how they're connected, but the Display Name on my application had ~ in the title and after changing from ~title~ to title the build uploaded and this error message went away. Hope this helps someone ~lol~
The error is confusing because the 120x120 reference doesn't clearly state that you need to fix the "60pt" app icon asset in a 2x format.
The iPad version of the error can be solved by turning off iPad as a platform choice. I think it might be good to do that as you troubleshoot.
Evening,
Going crazy about this, getting the following message straight after upload.
I've checked the icons, the icon file names in the info.plist, launch images, image compression etc
Any ideas what i've missed?
Dear developer,
We have discovered one or more issues with your recent delivery for "APP X". To process your delivery, the following issues must be corrected:
Invalid Image - For iOS applications, icons included in the binary submission must be in the PNG format.
If your application supports the iPhone device family, you must include a square icon of exactly 57x57 pixels.
If your application supports the iPad device family, you must include a square icon of exactly 72x72 pixels.
For Mac OS X applications, icons included in the binary submission must be in the ICNS format and must include a square 512x512#2x image.
Once these issues have been corrected, go to the Version Details page and click "Ready to Upload Binary." Continue through the submission process until the app status is "Waiting for Upload." You can then deliver the corrected binary.
Regards,
The App Store team
Any help would be great!
Thanks
Check the complexity/file size of your images. It sounds strange, but I've experienced this problem myself today.
Our 1024x1024 large app icon that had previously been fine was suddenly rejected. The icons we're using are quite simple (black and white company logo), so I added a little complexity to bring up the file size, and then the icon was accepted.
As the only difference was file size (dimensions, DPI, RGB format hadn't changed), I assume Apple is now checking for a minimum size for this icon, and it wouldn't surprise me if the same was being applied to the in-app icons.
I've seen images go corrupt sometimes, it is worth removing all of your app icons and adding them back to your project from the original source.
Also check your target's Info plist under the "Icon files" and "Icon files (iOS 5)" sections. Make sure they contain the correct filenames
Set Architecture to "Standard (armv7, armv7s)", Base SDK to "Latest iOS (iOS 6.1)" and Deployment Target to "4.3", or more recent.
Binaries are now rejected if using armv6, SDK 5.1 and target below 4.3.
At time of writing Xcode version is 4.6.3.
Open up your .ipa file and look for any extra images that may have been included. The .ipa is just a zip file, so from the terminal, unzip it, eg:
unzip /path/to/myapp.ipa
You can also check your project in Xcode. Select the project in the navigation pane, select the app target in the content pane, then go to the "build phases" tab and look at the "copy bundle resources" section. Browse through it to find your "rogue" image.
I just ran into the same error message earlier today and in my case it turned out that when your icon is completely in grayscale (has no colored pixels), it will automatically get rejected. Unfortunately the message gives zero indication that this might be an issue. Once I adjusted the color balance slightly towards red, I got to the next stage in review.
I ran into the same thing when I had submitted my "big icon" (1024x1024). That was a little less mysterious, as they at least mentioned "RGB" color requirements. Of course in normal language that still doesn't mean that grayscale is verboten, but there you go.
It was today exactly the same issue.
I tried to make the app with support iOS target 3.1.3 and support 6.1 using SDK 5.1 and 6.1 together. It was my usual success way.
So, my solution: to use the standard way with target iOS 4.3 without SDK 5.1.
Now it's in order. Well, sometimes it is not the problem with icons, but the using old SDK.
I'm really newbie in iOS and I have to handle a complicated situation. I was given an iPhone app developed by someone and I have to make it work. The guy who developed it has told me that it worked, but sometimes crashed in an iPhone. I've never developed using iOS and I don't really know how this app works.
Well, when I open the app with Xcode, the first problem that I detect is some errors with the references. The app uses the project CorePlot-CocoaTouch.xcodeproj. I've added again this project and solved the references (I've followed some other posts like this one: http://www.jaysonjc.com/programming/pie-chart-drawing-in-iphone-using-core-plot-library.html).
I want to test it with the simulator (I don't have an iPhone yet). I have a doubt here...should I use iOS Device, or iOS Simulator as Base SDK? Firstly I chose iOS Simulator, but it appeared a problem with Cocoa.framework (it turned into red).
Anyway, using iOS Device as Base SDK, I build the project and it says "Build failed (59 errors, 3 warnings)". I check out the errors, and most of them are "Expected specifier-qualifier-list before ..."
Can anyone help me? This is more or less the situation, but I can provide more specific details if they're needed.
I'm sorry if I'm talking about something really basic, but I've been trying to solve it for 2 weeks and I give up. I've tried to talk to the guy, but he's not really helpful..
Thanks for the replies!
By the way, I didn't say it and I don't know if it's relevant or what it means. The guy has a directory called "Libraries" where it's stored the CorePlot. The files there are the same than if you download the CorePlot project from other source. The only exception is a folder called "SDKBuild", which contains files like "build.sh", "iphoneos-SDKSettings.plist" or "iphonesimulator-SDKSettings.plist". I'm really newbie, so it's probably obvious, but I have no idea...
just try to add CocoaTouch framework to your project.
and for base SDK use "latest iOS".
Right click on the project name in 'group & files' set on the left of xcode. Choose add -> Existing Frameworks.
Find Cocoa.framwork and click add. Do this to all red colored framework.
Choose IOS Simulator as base SDK.
Try run it..
If you want to run the app on simulator, you have to build with iOS simulator. The base SDK basically sets the OS version (this will be the same regardless of whether you are running the app on simulator or device). You should be chaining the build settings to device only if the device is connected and if you have installed the appropriate provisioning profiles.
I am currently building a full and a lite/free version of an iPhone app from the same source (along the lines of Creating Lite Versions of iPhone Games / Apps). This works great.
The only thing I cannot figure out is how to have two different iTunesArtwork files included in the respective build (e.g. one with a "lite" stamp on it, one without).
I read App Icons on iPad and iPhone on Apple's page but they don't say what to do with iTunesArtwork. I did include different "Icon.png" etc. files in the two different *.plists I have and this works as expected. But what about iTunesArtwork?
Am I missing something?
It is not required to embed the 512x512 artwork into your bundle. In iTunes Connect you will be able to upload the 512x512 file and you will be able to upload screen captures for the two different apps.
In XCode 4 you can create a group where you put your target specific files and assign them the correct target membership in the identity inspector.
Thus you have always the correct iTunesArtwork in your .ipa file.
This worked for me like a charm.
Hope it helps.
I am creating a lite version of my app, and used Chris Fletcher's blog here as a guide to setting up an Xcode project for multiple apps. I have everything working great except for the icon file.
Here is an overview of what I have:
2 info.plist files (One for each version of the application)
In my paid info.plist, I reference the icon "IconPaid" for the Icon entry. In my Xcode project, I have added IconPaid.png and IconPaid#2x.png.
In my lite info.pist, I reference the icon "IconFree" for the Icon entry. In my Xcode project, I have added IconFree.png and IconFree#2x.png.
When I go to build both apps, my lite app shows up with the paid icon. I took a look at the package contents of my lite app, and sure enough the IconPaid files were included but not the IconFree files. I took it a step further, and printed out the value for the CFBundleIconFile in my app, and it correctly shows up as "IconFree".
So my question - Where else is the icon file referenced in a Xcode project besides the plist file? I thought that was the only place...
It sounds like your free target is copying the paid version of the icon instead of the free version. Look under Targets/Project-Name/Copy Bundle Resources and check that the free version is copying the correct icon file.
I'm not sure why the IconPaid.png is showing in the free app (assuming your build settings of your free target are referencing the proper info.plist). You may want to clean all targets and delete your intermediate build files too, and delete the old version from your simulator or device.