将我的应用程序上传到 App Store 时,我从 Application Loader 收到此错误。我的应用程序是在 iOS 3.0 时开发的,并且仍然针对 iOS 4.3 及更高版本。我最近更新了该应用程序以使其与 iOS7 兼容。但是应用程序加载器总是向我返回这种类型的错误。我搜索了互联网,发现我并不孤单。所以我创建了这篇文章,希望我发现的关于应用程序图标的信息可以帮助其他人。
9 回答
听起来您可能和我一样接受了 XCode 5.0 的建议,将您的图标文件迁移到目录。
当您这样做时,您需要从项目的 .plist 文件中删除CFBundleIconFile(“图标文件”)参数。这是执行此操作的旧方法,一旦您迁移了图标文件,显然该参数不正确。
奇怪的是 XCode 的迁移不会自动为您解决这个问题。会非常适合 Apple 来帮助你。
如果您的应用程序支持 iOS 5.0 及更高版本,则将所有图标文件移动到资产目录将起作用。
如果您的应用仍需要支持较低版本的 iOS(如我的),则解决方案是使用项目 plist 文件中的 CFBundleIconFiles 键。就我而言,我的应用程序是一个仅限 iPhone 的应用程序,所以我执行了以下操作:
- 准备 8 个图标文件:iOS6 和更早版本的两个应用程序图标(57x57 和 114x114),iOS7 的两个图标(60x60 和 120x120),iOS 6 和更早版本的聚光灯搜索/设置两个图标(29x29 和 58x58),两个图标聚光灯(40x40 和 80x80)。文件必须是 PNG 文件。将这些文件命名为任意名称,但高分辨率文件名必须采用 lowResolutionName@2x.png 的形式
- 在项目 plist 文件中,编辑 CFBundleIconFiles 键(它是一个数组)以包含上述图标文件的名称。只需要低分辨率文件名,不应包含扩展名 (.png)。Xcode 将自动找到高分辨率文件,只要它们的名称符合约定(使用@2x)。
- 确保您的项目不包含 Asset Catalog 文件夹
- 如果上述操作正确,当您检查应用程序目标的“常规”部分时,您应该会看到 Xcode 已在“应用程序图标”部分下的正确位置列出了所有图标文件。
- 如果您的应用需要支持 iOS 3.1 及更早版本,则需要额外制作四个图标文件。这些文件的大小和名称如下:Icon.png (57x57)、Icon@2x.png (114x114)、Icon-Small.png (29x29)、Icon-Small@2x.png (58x58)。固定名称是 iOS 要求的,不能更改。但只要你这样命名图标文件,你就不需要做任何额外的事情。
完成这些步骤后,您在将应用程序上传到 App Store 时应该不会对图标有任何问题。
资产目录简化了上述一些步骤,例如,生成低分辨率图标文件(我的猜测)。
我从“iOS 人机界面指南”、“iOS 应用程序编程指南”和“信息属性列表参考”中获得了上述信息。搜索“应用程序图标”并解释一切。
我的解决方案是:在“构建阶段”中,在“复制捆绑资源”下,单击“+”并选择所有图标。
祝你好运。
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
以上解决方案均不适用于我的特定情况。
最后,以下确实有效,以防其他人遇到同样的问题:
- 从资产目录中删除导致问题的应用程序图标集
- 在导航器窗格的目标属性中,删除然后读取应用程序图标的“使用资产目录” - 这将重新创建一个空的应用程序图标集
- 通过从导航窗格中拖动来选择所需的尺寸并分配正确的图像
- 删除 CFBundleIconFiles 键(iPad 有第二个键)
- 重建档案
在构建 Cordova 项目时发现了同样的问题。
删除icon.png为我清除了CFBundleIcon
问题info.plist
我基本上进入了 info.plist 并删除了我不需要的图标。我开始使用 Cocos2d 模板,大部分都不需要,所以我把它们都删除了。当我将程序存档并去验证它时,它给出了诸如“这个图标和那个图标在哪里?”之类的错误。好吧,我把它们都删了。但是在 info.plist 中仍然列出了所有 13 个图标,所以我只是删除了所有我删除的图标。
看起来,此错误可能有多种原因。就我而言,两个图标文件的像素尺寸错误(由 cordova 生成)。所以你可以检查一下。
为了让我解决这个问题,我不得不再次添加一个图标图像。
错误提到'CFBundleIcons':AppIcon40x40文件,当我检查图像Images.xcassets
下的AppIcon
图像设置图像时,Iphone Spotlight IOS 7-9 40pt实际上分辨率错误,所以我再次从 Finder 中拖动分辨率为 80x80 的图标(40x40 乘以比例因子 2x)。