My recent App Store upload gave me this error:
iTunes Store operation failed.
Missing required icon file. The bundle does not contain an app icon for iPhone / iP
I was able to resolve the issue by copying the below-given code in PodFile.
post_install do |installer|
copy_pods_resources_path = "Pods/Target Support Files/Pods-PROJECT_NAME/Pods-PROJECT_NAME-resources.sh"
string_to_replace = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"'
assets_compile_with_app_icon_arguments = '--compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" --app-icon "${ASSETCATALOG_COMPILER_APPICON_NAME}" --output-partial-info-plist "${BUILD_DIR}/assetcatalog_generated_info.plist"'
text = File.read(copy_pods_resources_path)
new_contents = text.gsub(string_to_replace, assets_compile_with_app_icon_arguments)
File.open(copy_pods_resources_path, "w") {|file| file.puts new_contents }
end
Let me know, if this works for you.
If you are using an images.xcassets
file, be sure it is included in the Build Phases > Copy Bundle Resources list. I inherited a project that did not use this, migrated to use this file for App Icon, but did not add it to the Copy Bundle Resources list. Now, you would expect a better error message, but this fixed the problem. (So did editing the plist file as per Sahil above citing stubyte.)
Make sure plist MinimumOSVersion > 6.0
If you're like me:
You may have made my mistake and you're not actually having the problems that others here are having. You just need to put the icons in the project!
My simple solution:
Re-archive and retry upload... success!
We had an old legacy project from 2015 and Xcode 6. It was using an old cocoapods integration. None of the other proposed solutions worked so far. After banging my head for a couple of hours I found the solution.
We just needed to update cocoapods and rerun pod install
. In fact I deintegrated cocoapods and integrated it from scretch, but maybe a pod install
would've been sufficient.
For Xcode 9 on High Sierra try this:
Go to Menu Product > Archive, right click on your new build > Show in Finder.
Open Terminal and change to Archive: (type cd + space, drag your new build *.xcarchive
cd /Users/[user]/Library/Developer/Xcode/Archives/[XXX].xcarchive
Using @stubyte's code:
find Products/ -name Info.plist -print0 | xargs -0n1 plutil -replace BuildMachineOSBuild -string 16A323
Go back to Xcode > Windows > Organizer > Upload to App Store...
Fixed:
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 >= 10.0."
ERROR ITMS-90023: "Missing required icon file. The bundle does not contain an app icon for iPad of exactly '167x167' pixels, in .png format for iOS versions supporting iPad Pro."
ERROR ITMS-90023: "Missing required icon file. The bundle does not contain an app icon for iPad of exactly '152x152' pixels, in .png format for iOS versions >= 10.0."
Still warning
WARNING ITMS-90704: "Missing Marketing Icon. iOS Apps must include a 1024x1024px Marketing Icon in PNG format. Apps that do not include the Marketing Icon cannot be submitted for App Review or Beta App Review."
This temporary solution is working for me.