55

将我的应用程序上传到 App Store 时,我从 Application Loader 收到此错误。我的应用程序是在 iOS 3.0 时开发的,并且仍然针对 iOS 4.3 及更高版本。我最近更新了该应用程序以使其与 iOS7 兼容。但是应用程序加载器总是向我返回这种类型的错误。我搜索了互联网,发现我并不孤单。所以我创建了这篇文章,希望我发现的关于应用程序图标的信息可以帮助其他人。

4

9 回答 9

96

听起来您可能和我一样接受了 XCode 5.0 的建议,将您的图标文件迁移到目录。

当您这样做时,您需要从项目的 .plist 文件中删除CFBundleIconFile(“图标文件”)参数。这是执行此操作的旧方法,一旦您迁移了图标文件,显然该参数不正确。

奇怪的是 XCode 的迁移不会自动为您解决这个问题。会非常适合 Apple 来帮助你。

于 2013-10-14T10:48:08.310 回答
11

如果您的应用程序支持 iOS 5.0 及更高版本,则将所有图标文件移动到资产目录将起作用。

如果您的应用仍需要支持较低版本的 iOS(如我的),则解决方案是使用项目 plist 文件中的 CFBundleIconFiles 键。就我而言,我的应用程序是一个仅限 iPhone 的应用程序,所以我执行了以下操作:

  1. 准备 8 个图标文件:iOS6 和更早版本的两个应用程序图标(57x57 和 114x114),iOS7 的两个图标(60x60 和 120x120),iOS 6 和更早版本的聚光灯搜索/设置两个图标(29x29 和 58x58),两个图标聚光灯(40x40 和 80x80)。文件必须是 PNG 文件。将这些文件命名为任意名称,但高分辨率文件名必须采用 lowResolutionName@2x.png 的形式
  2. 在项目 plist 文件中,编辑 CFBundleIconFiles 键(它是一个数组)以包含上述图标文件的名称。只需要低分辨率文件名,不应包含扩展名 (.png)。Xcode 将自动找到高分辨率文件,只要它们的名称符合约定(使用@2x)。
  3. 确保您的项目不包含 Asset Catalog 文件夹
  4. 如果上述操作正确,当您检查应用程序目标的“常规”部分时,您应该会看到 Xcode 已在“应用程序图标”部分下的正确位置列出了所有图标文件。
  5. 如果您的应用需要支持 iOS 3.1 及更早版本,则需要额外制作四个图标文件。这些文件的大小和名称如下:Icon.png (57x57)、Icon@2x.png (114x114)、Icon-Small.png (29x29)、Icon-Small@2x.png (58x58)。固定名称是 iOS 要求的,不能更改。但只要你这样命名图标文件,你就不需要做任何额外的事情。

完成这些步骤后,您在将应用程序上传到 App Store 时应该不会对图标有任何问题。

资产目录简化了上述一些步骤,例如,生成低分辨率图标文件(我的猜测)。

我从“iOS 人机界面指南”、“iOS 应用程序编程指南”和“信息属性列表参考”中获得了上述信息。搜索“应用程序图标”并解释一切。

于 2013-10-03T18:24:07.260 回答
10

我的解决方案是:在“构建阶段”中,在“复制捆绑资源”下,单击“+”并选择所有图标。

祝你好运。

于 2014-04-28T09:54:45.307 回答
4

Your recipe work's perfectly.

For my part,

I've select NameOfMyApp-info.plist in the Supporting Files.

I've only have to open the Key: Icon files.

I've just deleted all the string of image. (The error message in the Submit was exactly about those images.

I've try submiting again and : Submit Successful.

Thank's

于 2014-10-28T02:28:55.443 回答
4

以上解决方案均不适用于我的特定情况。

最后,以下确实有效,以防其他人遇到同样的问题:

  1. 从资产目录中删除导致问题的应用程序图标集
  2. 在导航器窗格的目标属性中,删除然后读取应用程序图标的“使用资产目录” - 这将重新创建一个空的应用程序图标集
  3. 通过从导航窗格中拖动来选择所需的尺寸并分配正确的图像
  4. 删除 CFBundleIconFiles 键(iPad 有第二个键)
  5. 重建档案
于 2014-11-12T14:12:12.430 回答
2

在构建 Cordova 项目时发现了同样的问题。

删除icon.png为我清除了CFBundleIcon问题info.plist

于 2017-06-28T12:18:56.460 回答
1

我基本上进入了 info.plist 并删除了我不需要的图标。我开始使用 Cocos2d 模板,大部分都不需要,所以我把它们都删除了。当我将程序存档并去验证它时,它给出了诸如“这个图标和那个图标在哪里?”之类的错误。好吧,我把它们都删了。但是在 info.plist 中仍然列出了所有 13 个图标,所以我只是删除了所有我删除的图标。

于 2014-02-22T11:30:44.523 回答
1

看起来,此错误可能有多种原因。就我而言,两个图标文件的像素尺寸错误(由 cordova 生成)。所以你可以检查一下。

于 2016-08-25T11:56:55.723 回答
1

为了让我解决这个问题,我不得不再次添加一个图标图像。

错误提到'CFBundleIcons':AppIcon40x40文件,当我检查图像Images.xcassets下的AppIcon图像设置图像时,Iphone Spotlight IOS 7-9 40pt实际上分辨率错误,所以我再次从 Finder 中拖动分辨率为 80x80 的图标(40x40 乘以比例因子 2x)。

于 2016-08-24T01:40:09.793 回答