我最近的App Store上传给了我这个错误:
iTunes Store operation failed.
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.
我添加了一个120像素的图标文件,名称为“Icon-120.png”和“[email protected]”并检查它是否正在Build Phases> Copy Bundle Resources中添加,但我仍然得到相同的错误。
有什么建议我可以尝试解决这个问题吗?
如果它帮助我一直在努力通过这个非常冗长的SO答案:'Missing recommended icon file - The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format',但还没有到底。
此外,我已经完成了Build> Clean并重新启动了Xcode。
====
$ file Icon-120.png
Icon-120.png: PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced
$ file Icon-60\@2x.png
[email protected]: PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced
如果你使用xcode 9,也许试试这个。找到xcarchive文件,执行此命令。
find Products/ -name Info.plist -print0 | xargs -0n1 plutil -replace BuildMachineOSBuild -string 16A323
访问developer site stubyte的回答。
如果你像我一样:
你可能犯了我的错误而你实际上并没有遇到其他人所遇到的问题。你只需要将图标放在项目中!
我的简单方案:
重新存档并重试上传...成功!
我们有一个旧的遗留项目从2015年和Xcode 6.它使用旧的cocoapods集成。到目前为止,其他提出的解决方案都没有奏效在敲了几个小时后,我找到了解决方案。我们只需要更新cocoapods并重新运行pod install
。事实上,我将cocoapods解体并从scretch中整合出来,但也许pod install
已经足够了。
对于High Sierra上的Xcode 9,试试这个:
固定:
ERROR ITMS-90022:“缺少必需的图标文件。该软件包不包含完全'120x120'像素的iPhone / iPod Touch的应用程序图标,iOS版本的.png格式> = 10.0。”
ERROR ITMS-90023:“缺少必需的图标文件。该软件包不包含完全'167x167'像素的iPad应用程序图标,支持iPad Pro的iOS版本为.png格式。”
ERROR ITMS-90023:“缺少必需的图标文件。该软件包不包含iPad的应用程序图标,完全'152x152'像素,iOS版本的.png格式> = 10.0。”
仍在警告
警告ITMS-90704:“缺少营销图标.iOS应用程序必须包含PNG格式的1024x1024px营销图标。不包含营销图标的应用程序无法提交给App Review或Beta App Review。”
这个临时解决方案对我有用。
既然你提到的图标文件名不在Info.plist
中,你会想要添加:
<key>CFBundleIconFiles</key>
<array>
<string>Icon-120.png</string>
</array>
现在似乎需要将图标与您的应用相关联。
在“常规”视图中,在“应用程序图标和启动图像”部分中,确保“应用程序图标源”与“Images.xcassets”文件链接。
另一个简单修复一旦发现:
我在XCode 9.0上遇到了类似的问题,这个项目在XCode 8下工作得非常好,当我升级解决方案时,iOS 10突然失去了它的图标(仅在iPad上)。
把我的头发撕掉,做了sRGB的事情,做了透明度的事情。
结果我在目标info.plist文件中仍然有以下空条目
CFBundleIcons〜ipad公司
我很久以前就开始在目标构建设置中指定它。
解决方案是简单地从info.plist文件中删除此条目(单击有用的小“ - ”按钮。重新构建并测试,一切都再次完美。
如果您使用的是images.xcassets
文件,请确保它包含在Build Phases> Copy Bundle Resources列表中。我继承了一个没有使用它的项目,迁移到将这个文件用于App Icon,但没有将它添加到Copy Bundle Resources列表中。现在,您会期望更好的错误消息,但这解决了问题。 (所以按照Sahil编辑plist文件,上面引用了stubyte。)
刚遇到同样的问题。使用Xcode 8.3.3并想在Assets目录中使用App Icon。尝试了各种Stack Overflow答案但没有成功。
终于从Ken / Apple论坛了解到了一个深刻的清洁步骤:
如果您已将所有图标文件添加到“images.xcassets”,则可能忘记检查Xcode右侧面板中的“目标成员资格”。
您可以清理项目,将其存档并发送到iTunesConnect。
我能够通过在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
让我知道,如果这适合你。