我提交了一个应用程序更新,但我收到了一封电子邮件,告诉我这个错误已经发生:

缺少推荐的图标文件-该包不包含iPhone / iPod Touch的精确的“120x120”像素的应用程序图标,png格式

我该如何解决这个问题?

以下是苹果目前对图标的要求。

我看不到120x120出现在任何地方?这是iOS 7特有的吗?我应该添加一个icon -120.png之类的图标吗?

更新:我添加了三个图标到资源文件夹(Icon-120.png: 120x120, Icon-76.png: 76x76 & Icon-152.png: 152x152),但它没有将它们添加到info.plist。收到了同样的警告邮件。我决定不做任何改变,等着看接下来会发生什么。

令我惊讶的是,这款应用在20个小时后就进入了审查阶段,并在第二天就发布了!这不禁让我好奇,究竟有多少苹果/Windows应用测评人员潜伏在这里。


当前回答

在我的例子中,我的App图标文件不是驼峰符号。例如:

我的文件名:Appicon57x57

应该是:AppIcon57x57(注意这里的大写“i”)

所以,在我的案例中,解决方案是这样的:

从资产目录中删除所有图标文件。 如上所述重命名文件。 重新将重命名的文件添加回资产目录。

这应该能解决问题。

其他回答

我在使用Xcode 4.6提交应用时也遇到了同样的问题。它不识别尺寸为120x120, 58x58, 29x29等的图标。所以当我试图添加这些图标到信息。plist并提交应用进行审查,Xcode 4.6不允许我这样做。在提交没有上述图标的应用程序时,我收到一封邮件说-

“您的交付是成功的,但您可能希望在下次交付时纠正以下问题: 缺少推荐的图标文件-捆绑包不包含iPhone / iPod Touch的应用程序图标,精确的“120x120”像素,png格式。

因为是推荐的,没有必要,所以我还是提交了应用。我将上述推荐的图标添加到包中,但没有在Info.plist中指定它们。我又收到了同样的邮件。这一次我忽略了它,令我惊讶的是,应用程序被接受了。

我想让我的应用程序运行在iOS 5及以上,因此,我必须使用Xcode 4.6,而不是最新的Xcode 5,它只允许应用程序运行在iOS7及以上。

更新:

注:“从2014年2月1日开始,提交到app Store的新应用和应用更新必须使用Xcode 5和iOS 7 SDK构建。” https://developer.apple.com/news/?id=12172013a#top

因此,该场景在将来将无效。

在我的案例中,它与CocoaPods有关。我花了很多时间去寻找原因,因为一切似乎都是正确的。我在这里找到了https://github.com/CocoaPods/CocoaPods/issues/7003。我只是在构建阶段将“[CP] Copy Pods Resources”和“[CP] Embed Pods Frameworks”移到了“Copy Bundle Resources”上面,错误就消失了。

我想再加一个陷阱。即使您做的一切都是正确的,如果您在构建过程中支持多个目标,您也可能会被这个错误所困。

图像资产目录是目标的一部分,即使您在Xcode5中选择它用于目标,也不意味着它会自动添加。

结果,构建工作就像一个魅力,但资产目录没有添加到IPA和AppStore验证失败的错误,即图标缺失。

要修复或检查资产是否是目标的一部分,请在Xcode项目中选择资产条目,并确保在检查器中选中了目标。

任何沙玛林。iOS或Xamarin。表单开发人员,此外,你会想检查.csproj文件(iOS项目),并确保它包含对PNG的引用,而不仅仅是资产目录,即。

<ItemGroup>
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Contents.json" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-40.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-40%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-40%403x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-60%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-60%403x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-72.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-72%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-76.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-76%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-83.5%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-Small-50.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-Small-50%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-Small.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-Small%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon-Small%403x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\Icon%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\NotificationIcon%402x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\NotificationIcon%403x.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\NotificationIcon~ipad.png" />
<ImageAsset Include="Resources\Images.xcassets\AppIcon.appiconset\NotificationIcon~ipad%402x.png" />
</ItemGroup>

你不需要这么复杂。如果你使用的是XCode 5(我相信我们大多数人都是),然后创建你的图标,叫他们任何你喜欢的。

myicon - 58. - png myicon - 57. - png myicon - 72. - png myicon - 80. - png myicon - 100. - png ....

并将它们拖放到AppIcon下的正确框中。见截图。你不需要手动编辑plist文件。