ChatGPT解决这个技术问题 Extra ChatGPT

如何为通用 iPhone/iPad 应用程序指定两个图标?

我希望创建一个同时支持 iPhone 和 iPad 的应用程序。该应用程序可以根据需要在两个设备的模拟器中运行。现在我正在尝试构建和部署它。我将 plist 中的“图标文件”设置为 57x57 .png 图像,当我构建并尝试提交应用程序时,ItunesConnect 抱怨 iPad 需要 72x72 .png 图像。如果我将“图标文件”指定为 72x72 .png ItunesConnect 抱怨 iPhone 需要 57x57 图像。如何在单个 plist 中指定两个图标?


O
Ole Begemann

将 Array 类型的 CFBundleIconFiles 键添加到 Info.plist。该数组应包含 2 个字符串项:两个图标的文件名。然后,操作系统将根据每个平台的像素尺寸自动选择正确的图标。

您可以保留 CFBundleIconFile 键并让它指向 iPhone 的图标文件,以实现 3.0/3.1 兼容性。

2010 年 5 月更新:Apple 现在有技术说明对此进行了详细解释:Technical Q&A QA1686 – App Icons on iPad and iPhone


+1 技术说明并使用原始键而不是值!
在某些情况下,您需要将密钥明确指定为“CFBundleIconFiles”。
对此投了赞成票.. 只是一个在 Iphone 中的孩子,但只是喜欢(也很容易理解)更新说明。
W
William Janoch

CFBundleIcon文件

CFBundleIcon 文件

第一个只能是一个字符串,将用于 iphone 3.1 和更早的版本(我认为)。第二个可以更改为值类型“数组”(右键单击)。然后单击它左侧的三角形(使其指向下方),然后向右传递一个值。粘贴第二个值以包含另一个文件名。

只要是PNG,名称似乎无关紧要。该文件将根据正确的大小来选择,因此只包括一个 57x57 的 iPhone 和一个 72x72 的 iPad 的名称。

我目前正在将 Math Cards Pro 转换为通用的,所以我还没有成功地将通用应用程序提交到 App Store,但我非常有信心这一切都是正确的。


P
PengOne

好吧,您知道如何放置默认图像,您必须放置 Default~landscape 和 Default~Portrait 以便您的 ipad 应用程序在横向或纵向加载时显示两个启动图像,好吧,我对图标。由于 iphone 和 ipad 图标的名称完全相同,即使我将它们分开在不同的文件夹中,它仍然没有让我,无论是 iphone 图标还是 ipad 图标,所以我将 iphone 图标重命名为 icon~iphone 并将其导入xcode 然后将其拖到 iphone 图标图像插槽和 plist 文件上它会自动识别它。所以我建议这样做,我没有将它上传到 iTunes Connect,但它没有显示错误。

希望它有所帮助。


佚名

也为我工作。使用 3.2.b5 我可以右键单击我的 plist 文件并单击“打开为...源代码”。添加的信息与上面粘贴的 byamabe 完全一样,然后 presto - 提交。现在,如果我不是因为这个问题又迟到了一个小时(太)...


N
Nathan

您也可以通过内置编辑器添加它。

icon.png 是字符串 0 icon-ipad.png 是字符串 1