缺少必需的图标文件。该软件包不包含完全' 120x120'的iPhone / iPod Touch的应用程序图标。像素

时间:2017-05-12 16:48:18

标签: ios iphone xcode itunesconnect

我最近的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"和" Icon-60@2x.png"并检查它是否已在Build Phases>中添加复制Bundle Resources但我仍然遇到同样的错误。

有什么建议我可以尝试解决这个问题吗?

如果通过这个非常冗长的答案,我一直在努力:'Missing recommended icon file - The bundle does not contain an app icon for iPhone / iPod Touch of exactly '120x120' pixels, in .png format' 但还没到达底部。

另外,我已经完成了Build>清理并重新启动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 
Icon-60@2x.png: PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced

17 个答案:

答案 0 :(得分:11)

如果你使用xcode 9,也许试试这个。 找到xcarchive文件,执行此命令。

price_below

访问developer site stubyte的回答。

答案 1 :(得分:10)

对于High Sierra的Xcode 9,试试这个:

  1. 转到菜单产品>存档,右键单击您的新构建>在Finder中显示。
  2. 打开终端并更改为存档:(输入cd + space,拖动新版本* .xcarchive

    cd /Users/[user]/Library/Developer/Xcode/Archives/[XXX].xcarchive

  3. 使用@ stubyte的代码:

    查找Products / -name Info.plist -print0 | xargs -0n1 plutil -replace BuildMachineOSBuild -string 16A323

  4. 返回Xcode> Windows>组织者>上传到App Store ...

  5. <强>固定

    错误ITMS-90022:“缺少必需的图标文件。该软件包不包含完全'120x120'像素的iPhone / iPod Touch的应用程序图标,iOS版本的.png格式&gt; = 10.0。”

    错误ITMS-90023:“缺少必需的图标文件。该软件包不包含完全'167x167'像素的iPad应用程序图标,支持iPad Pro的iOS版本为.png格式。”

    错误ITMS-90023:“缺少必需的图标文件。该软件包不包含iPad的应用程序图标,完全'152x152'像素,iOS版本的.png格式&gt; = 10.0。”

    仍然警告

    警告ITMS-90704:“缺少营销图标.iOS应用程序必须包含PNG格式的1024x1024px营销图标。不包含营销图标的应用程序无法提交给App Review或Beta App Review。”

    这个临时解决方案对我有用。

答案 2 :(得分:4)

由于您提到图标文件名不在您要添加的Info.plist中:

<key>CFBundleIconFiles</key>
<array>
    <string>Icon-120.png</string>
</array>

现在似乎需要将图标与您的应用相关联。

答案 3 :(得分:2)

在“常规”视图中, 在“应用程序图标和启动图像”部分中, 确保“应用图标来源”与“ Images.xcassets ”文件相关联。

答案 4 :(得分:1)

一旦发现另一个简单修复:

我在XCode 9.0上遇到了类似的问题,这个项目在XCode 8下工作得非常好,当我升级解决方案时,iOS 10突然失去了它的图标(仅在iPad上)。

撕掉我的头发,做了sRGB的事情,做了透明度的事情。

原来我的目标info.plist文件中仍然有以下空条目

CFBundleIcons〜ipad的

我很久以前就开始在目标构建设置中指定它。

解决方案是简单地从info.plist文件中删除此条目(单击有用的小&#34; - &#34;按钮。重建和测试,一切都再次完美。

答案 5 :(得分:1)

如果您使用的是images.xcassets文件,请确保它包含在Build Phases&gt;中。复制捆绑资源列表。我继承了一个没有使用它的项目,迁移到将这个文件用于App Icon,但没有将它添加到Copy Bundle Resources列表中。现在,您会期望更好的错误消息,但这解决了问题。 (所以根据Sahil编辑plist文件,上面引用了stubyte。)

答案 6 :(得分:0)

刚遇到同样的问题。使用Xcode 8.3.3并希望在Assests目录中使用AppIcon。尝试了各种Stack Overflow答案但没有成功。

最后了解了Ken / Apple论坛的深度清洁步骤:

  • 删除所有图标文件,无论是来自资源(删除 - 垃圾)还是appicon文件(选择 - 删除所选项目);删除了甚至资产文件夹
  • 深度清洁(按产品菜单w /选择键,然后选择'清理构建文件夹')
  • 添加了一个新的资产目录,并将其命名为“Assets”,右键单击Assets文件夹并添加了新的应用程序图标集 - 在检查器中将其更改为iOS&gt; = 7
  • 三重 检查了Xcode外面的所有图标文件(所有这些文件都是正确分辨率的png文件,但是有些文件仍然是从photoshop元素附加的颜色配置文件,或者确实有索引颜色而不是RGB配置文件。所以我确保我只保存一个没有颜色的png文件配置文件和背景图层) - 不确定是否有必要
  • 从“产品”菜单
  • 归档构建
  • 验证并从Window - Organizer上传构建

答案 7 :(得分:0)

TLDR :当心应用程序显示名称(即“产品名称”)中的特殊字符。

我的项目是新的(一个月前在Xcode 9中全新创建),并且我们将所有图像组(应用程序图标,设置等)的大小正确的资源拖入了xcassets文件。在使用fastlane以及在Xcode中上传到App Store Connect API时,我遇到了有关丢失确切大小图标的这些错误。这是第一次上传此特定应用。

在这个问题上,我浪费了很多令人沮丧的时间,并尝试了各种无济于事的事情,这些事情在网上已经提到:

  • 清理所有构建文件夹
  • 重新创建xcassets文件,确保其处于正确的构建阶段
  • 在拖入xcassets内部的AppIcon中之前,先按“旧方式”命名文件(例如Icon-60@2x.png等)
  • 在正确的xcassets文件中验证App Icon的项目点
  • 我可以继续...

最后,我直觉尝试重命名应用程序(即Xcode项目设置中的“产品名称”,该名称显示在用户主屏幕上的应用程序图标下方),因为我们的应用程序中包含波浪号{ {1}}(我们的应用是一款名为~的复古主题游戏)。删除波浪号解决了我的问题。我开始怀疑,因为该构建的输出文件被字面称为您在“产品名称”字段中输入的内容,因此我可以想象在服务器端带有波浪号的路径被错误地处理了。它从未在iOS Simulator或我的设备中给您带来麻烦,但是您就可以了! FWIW我确实提交了错误报告,但尚未收到苹果的回音。

如果有其他人遇到相同的问题,我会发表自己的经验。

答案 8 :(得分:0)

确保plist MinimumOSVersion> 6.0

答案 9 :(得分:0)

浪费了将近1天的时间并尝试了互联网上所有可用的解决方案,但没有任何效果。

最后,我得到了实际的问题和解决方法。我们走了。

实际的问题是您的图像资产(Images.xcassets)未与目标项目链接。现在解决,

  • 转到项目的构建阶段。
  • 如果尚未添加,请从顶部的添加图标
  • 添加副本捆绑资源
  • 然后在其中添加Images.xcassets。
  • 就这样..您完成了。现在,它应该可以正常工作。

我如何获得解决方案?只是将新创建的项目的配置与我当前的项目进行了比较。还有,瞧。

答案 10 :(得分:0)

我们有一个来自2015年和Xcode 6的旧项目。它使用了旧的cocoapods集成。到目前为止,没有其他提议的解决方案起作用。敲了几个小时后,我找到了解决方案。 我们只需要更新cocoapods并重新运行pod install。实际上,我对可可足类进行了解集成并从scretch中进行了集成,但是也许pod install就足够了。

答案 11 :(得分:0)

就我而言,我已经使用此网站为该应用程序创建了新图标。

发生此错误是因为没有错误指示的尺寸的图标。 在我的情况下,不存在大小不同的图标。

https://appicon.co/#app-icon

答案 12 :(得分:0)

如果你像我一样:

  • 对黑客不感兴趣
  • 全新的XCODE ,只是想让你的React Native或Wrapper应用程序构建和上传
  • 正在运行 Xcode 9
  • 未在本地正确宣布图标

你可能犯了我的错误而你实际上并没有遇到其他人所遇到的问题。您只需将图标放在项目中即可!

我的简单解决方案:

  • 创建名为Icon-40@2x.png
  • 的80x80图标
  • 创建一个名为Icon-60@2x.png
  • 的120x120图标
  • 创建名为Icon.png
  • 的1024x1024图标
  • 打开XCODE
  • 导航到Images.xcassets,它会向您显示几个将图标拖到
  • 的位置
  • 将Icon-40@2x.png拖至Iphone Spotlight iOS 7,40pt,x2 box
  • 将Icon-60@2x.png拖至Iphone App iOS 7,60pt,x2 box
  • 将Icon.png拖至App Store 1024pt

重新存档并重试上传...成功!

答案 13 :(得分:0)

就我而言,由于某种原因,AppIcon资产不属于应用目标。选中此复选框可解决问题:

enter image description here

答案 14 :(得分:0)

我能够通过在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

如果这对你有用,请告诉我。

答案 15 :(得分:0)

如果您已将所有图标文件添加到“images.xcassets”,则可能忘记检查Xcode右侧面板中的“目标成员资格”。

您可以清理项目,将其存档并发送到iTunesConnect。

答案 16 :(得分:-1)

我也遇到了同样的问题,我通过这个 URL 创建了一个应用图标:

https://appicon.co/

适用于 iPhone 和 iPad。它给了我一个 .zip 文件,我解压缩它并在我的应用程序的 xcassets 中移动“AppIcon.appiconset”。

现在清理项目并创建一个新存档并将其上传到 AppStore 并且它工作正常,

谢谢