ios - Xcode9 iOS11 应用程序版本中缺少 CFBundleIconName

标签 ios xcode app-store-connect ios11 xcode9

我正在努力使用基于 iOS 11 SDK 构建的 Xcode 9 发布我们应用程序的新版本。归档和上传二进制文件很顺利,没有任何问题。该构建在 iTunes Connect 中显示为“正在处理”,然后它消失了,我收到了以下电子邮件。

Dear developer,

We have discovered one or more issues with your recent delivery for "". To process your delivery, the following issues must be corrected: Missing Info.plist value - A value for the Info.plist key CFBundleIconName is missing in the bundle ''. Apps that provide icons in the asset catalog must also provide this Info.plist key. For more information see http://help.apple.com/xcode/mac/current/#/dev10510b1f7. Once these issues have been corrected, you can then redeliver the corrected binary. Regards, The App Store team

该链接提供了有关 Assets 包的一些信息。我尝试将 CFBundleIconName 键设置为项目名称或图像文件名称,然后再次提交应用程序。但是,我仍然收到与上面相同的电子邮件。

我们将不胜感激任何帮助建议。

最佳答案

我为此苦苦挣扎了一整天,一直到深夜,尝试了我能想到的每一种排列方式,并最终找到了这个解决方案——希望这能让某人免于经历这场噩梦。

我的应用程序之前没有使用 xcassets 目录,因此我在尝试通过使用文件 - 新建 - 文件... 并从文件类型中选择 Assets 目录来解决此问题时向项目添加了一个 - 我将其命名为Assets.xcassets 并在 xcode 项目中选择它。然后右键单击右侧的区域并选择添加应用程序图标和启动图像,然后选择新的 iOS 应用程序图标,然后我将我的 1024x1024 图像拖到应用程序商店 iOS 1024pt 插槽的井中,你会认为这会起作用。但在存档并提交给商店后,我仍然收到被拒绝的电子邮件。

缺少 Info.plist 值 - bundle 中缺少 Info.plist 键 CFBundleIconName 的值。 bla bla bla...

我还在 Info.plist 中添加了“图标名称”的键,CFBundleIconName 也知道它,并将其设置为与我在项目中的 1024x1024 图像匹配的字符串文件名。但是,即使检查 IPA 内容显示一切正确,这些都没有用。

最后,我从名为 Assets.xcassets 的目录中删除了 AppIcon,使其为空,并执行以下操作来解决问题:

通过单击您的应用程序名称转到应用程序的主要设置,然后选择“常规”选项卡,然后在“应用程序图标”和“启动图像”部分下单击“应用程序图标”源旁边的按钮并选择使用 Assets 目录 - 选择您的 Assets 目录的名称 - 我的名为 Assets.xcassets - 并说要使用该弹出窗口上的按钮转换(迁移)应用程序 - 我还选中了转换启动图像的框 - 当你完成应用程序图标源和Launch Images Source 的名称将出现在下拉列表中。

点击它进入 Assets 目录 - 我的也是 Assets.xcassets,然后点击 AppIcon 部分并将您的 1024x1024 图像拖到 App Store iOS 1024pt 井/槽中。最后一次存档你的应用程序并将其提交到应用程序商店 - 到那时希望不会再收到来自 hell 的电子邮件,因为我开始调用他们关于拒绝你的应用程序并且你可以返回到 iTunesConnect 提交你的应用程序。

祝你好运 - 当你尝试了很多合理的修复但没有成功时,我理解你可能会因为这个大多是神秘的错误而感到痛苦。有时这就是软件工程师的生活……;)

如果这很容易,每个人都会去做,对吧。 ;)

关于ios - Xcode9 iOS11 应用程序版本中缺少 CFBundleIconName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46216718/

相关文章:

iphone - 这个 for 循环有什么问题 - 试图用 Tweet 对象填充数组?

xcode - Mac App Store 沙盒 - 安装用户脚本?

ios - 钛 ti.storekit 返回空产品

iphone - iCloud 集成警告

iOS 没有将新 View 推送到 NavigationController

ios - 在苹果开发者账户(企业账户)中创建应用标识符时出错

ios - GameCenter iTunesConnect - 排行榜不是附加到版本的排行榜集的成员

iphone - NSString UITextView 不替换以前的文本

ios - 在使用 UITableView 时快速声明一个全局变量

ios - 使用 Alamofire 下载视频,然后在 AV 播放器上播放