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

缺少推荐的图标文件-该包不包含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应用测评人员潜伏在这里。


当前回答

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

其他回答

公认的答案很好,但简短的回答是:

<key>CFBundleIconFiles</key>
<array>
    <string>icon@2x.png</string>
    <string>icon.png</string>
    <string>Icon-Small.png</string>
    <string>Icon-Small@2x.png</string>
    <string>Default.png</string>
    <string>Default@2x.png</string>
    <string>icon-72.png</string>
    <string>icon-72@2x.png</string>
    <string>Icon-Small-50.png</string>
    <string>Icon-Small-50@2x.png</string>
    <string>Default-Landscape.png</string>
    <string>Default-Landscape@2x.png</string>
    <string>Default-Portrait.png</string>
    <string>Default-Portrait@2x.png</string>

下面有新图标

    <string>icon-40.png</string>
    <string>icon-40@2x.png</string>
    <string>icon-60.png</string>
    <string>icon-60@2x.png</string>
    <string>icon-76.png</string>
    <string>icon-76@2x.png</string>
</array>

通过在谷歌中搜索“捆绑包不包含精确的‘120x120’像素的iPhone / iPod Touch应用程序图标,png格式”可以找到这个。

任何沙玛林。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>

添加另一个“相同的症状,但不同的解决方案”的响应,以防有人有相同的问题,但没有一个常用的解决方案有效。

以我为例,我有一款应用在资产目录指导和图标命名惯例的灵活性之前开始开发,但在过渡后首次提交给商店。为了解决这个问题,我不得不:

从Info.plist中删除所有“图标相关”行 对于AppIcons和LaunchImages,切换回“不要使用资产目录” 切换回AppIcons和LaunchImages的资产目录 重新拖放图像文件到适当的位置。

我也有同样的问题。使用Xcode 8.3.3,并希望在资产目录中使用AppIcon。尝试了所有Stack Overflow的答案都没有成功。

最后从Ken/Apple论坛了解到一个深刻的清洁步骤:

removed all icon files, whether from resources (delete - trash) or appicon file (select - remove selected items); removed even assets folder deep cleaned (Use the Product menu w/option key pressed, then choose to 'clean build folder') added a new asset catalogue and called it "Assets" right clicked in Assets folder and added new app icon set - changed that one in inspector to be for iOS >=7 triple checked all my icon files OUTSIDE of Xcode (all were already png files of right resolution, but some had still colour profile attached from photoshop elements or did have indexed colour instead of RGB profile. so I made sure I only save a png file without colour profile and from a background layer) - not sure that was necessary archived the build from Product menu validated and uploaded the build from Window - Organizer

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

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

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

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