iOS 7应用程序图标,在保留iOS 6图标的同时启动图像和命名约定


83

我刚刚在iOS 6上完成了一个应用程序,并在一周前购买了一个开发人员帐户,因此没有太多时间玩iOS 7 SDK。刚刚下载了Golden Master版本,并尝试升级我的应用程序以使其与iOS 7兼容。

我意识到iOS 7需要对应用程序图标进行一些操作。我检查了许多相关的问题,我感到困惑。我已经有一个带有应用程序图标的iOS 6应用程序,当我安装黄金级母版时,我看到了以下内容:

iOS 7 App图标

对于启动图像:

iOS 7启动图像

我可以为iOS 7创建新的平面图标,同时希望iOS用户继续看到旧的图标。

我该怎么办?使用“使用资产目录”或手动添加图标,如果我要手动添加图标,那么我应如何命名这些图像?谢谢!

Answers:


78

您可以回答“绝对资产目录”,在添加或更新应用程序图标时,无需遵循命名约定。

以下是从Apple迁移应用程序图标集或启动图像集的步骤:

1-在项目导航器中,选择目标。

2-选择“常规”窗格,然后滚动到“应用程序图标”部分。

在此处输入图片说明

3-通过单击图像行右侧的文件夹图标并在出现的对话框中选择图像文件,在“应用程序图标”表中指定图像。

在此处输入图片说明

通过单击“使用资产目录”按钮,从弹出菜单中选择资产目录,然后单击“迁移”,将“应用程序图标”表中的图像4迁移到资产目录。

在此处输入图片说明

或者,您可以通过选择“编辑器”>“新建应用程序图标”来创建一个空的应用程序图标集,并通过从Finder拖动图像或通过选择“编辑器”>“导入”将图像添加到该图像集中。


简而言之,首先我必须根据表中给出的尺寸浏览和设置图像,然后可以将它们迁移到iOS 6和iOS 7的Asset Catalog。
AJ112

2
是的,您的旧图像将立即迁移,但是肯定需要重新设计新图像,但是至少您可以确切地知道需要通过资产目录中继哪些图标或图像。
Tarek Hallak 2013年

1
自从这样做以来,我似乎在管理器和TestFlight中都失去了我的AppIcon。一切似乎都可以在设备上正常工作-我是否还需要做其他工作才能使这些设备正常工作,我还尝试过使用CFBundleIcons,是否有任何想法?
PaulJ 2013年

我发现对于多个目标项目,最好采用替代路线并为每个目标创建新的资产文件。有时,迁移选项会引起混淆。然后,为每个资产分配一个单一的目标成员身份。
RobCroll

谢谢!我试图找到一种编辑这些行的方法。如果您具有XCode窗口(而不是全屏)窗口,则文件夹按钮可以隐藏在右侧工具栏的后面。
HaemEternal 2013年

24

您应该使用资产目录:

我研究了如何使用资产目录;现在对我来说似乎很容易。我想向您展示添加图标和启动资产目录的步骤。

注意:无需在info.plist文件中进行任何输入:),也不需要任何其他配置。

在下图的右侧,您将看到突出显示的区域,您可以在其中提及所需的图标。在我的情况下,我已经选择了前四个复选框。作为其对我的应用程序要求。您可以根据需要选择选项。

在此处输入图片说明

现在,请参见下图。当您选择任何应用程序图标时,您将在右侧所选区域看到其详细信息。这将帮助您上传正确的分辨率图标。 在此处输入图片说明

如果未添加正确的分辨率图像,则会出现以下警告。只需以正确的分辨率上传图像。 在此处输入图片说明

上传所有必需的尺寸后,您将不会收到任何警告。 在此处输入图片说明


嗨:我遇到了这个问题,就像您一样,我已经进行了所有设置。当我运行应用程序时,哪个模拟器将显示图标,但无论是否进行所有清理和重建,但是当我部署到真实的iPhone 5s时,它都不会显示。
phil88530 2014年

@ phil88530,请确保您还选择了iOS 7.0和更高版本(如上图所示)。其次,还要确保您正在使用最新的XCode版本,例如v 5.1.1或更高版本。
msmq,2014年

如果您想节省所有图标大小的时间,可以使用此应用程序,它会为您生成应用程序图标资产目录:itunes.apple.com/app/id1052532083(免责声明:这是我的应用程序)
Erik

14

如果你希望使用资产类别,你可以通过创建一个120×120的PNG图片添加的iOS 7的图标为一个旧的应用程序。命名Icon-120.png并拖到项目中。

在目标>您的应用>信息>图标文件下,在目标属性中再添加一项:

在此处输入图片说明

我在Xcode 5上进行了测试,并且提交了一个应用程序,但没有丢失视网膜图标警告。


2
您可能还需要添加Icon-76.png和Icon-152.png。另外,还要确保图标在“构建阶段”上市>“复制包资源”(见stackoverflow.com/a/12225627/376066
米哈伊尔·

为您的WHERE说明+1以添加图标信息。谢谢!
TJ Asher 2014年

真的,这是一个字,谢谢,亲爱的,我花了两个小时来设置APPICON的拖放功能,这对我来说不起作用,但是使用.plist文件是有效的...谢谢。
Yagnesh 2014年

5

好的,添加到@null的关于使用Asset Catalog的精彩文章中。

您可能需要执行以下操作,才能链接该应用程序的图标,并可以在组织者试飞以及可能不知道的AppStore位置中看到Ad-Hoc分发/生产


创建资产目录后,请注意.xassetsXcode中列出的启动图像名称和应用程序图标名称。

默认情况下,这应该是

  • AppIcon
  • LaunchImage

[要查看此内容,请单击Xco​​de中的.xassets文件夹/图标。](可以更改,因此请记下此变量,以备后用)


现在,每个构建都将在您的.app中创建以下数据结构:

对于应用程序图标:

苹果手机

  • AppIcon57x57.png(iPhone非视网膜)[注意图标名称前缀]
  • AppIcon57x57@2x.png (iPhone视网膜)

并且其他每个图标的分辨率都采用相同的格式。

的iPad

  • AppIcon72x72~ipad.png (iPad非视网膜)
  • AppIcon72x72@2x~ipad.png (iPad视网膜)

(对于iPad,它的后缀略有不同)


主要问题

现在,我注意到Info.plist在Xcode 5.0.1中,它Icon files (iOS 5)在完成资产目录的创建后会自动尝试并无法为“ ”创建密钥。

如果确实创建了一个引用,或者它可能已经被Apple修补或刚刚工作,那么您要做的就是查看图像名称以验证上面列出的格式。

最终解决方案:

向您添加以下密钥 .plist

我建议您.plist使用外部文本编辑器(例如TextWrangler)打开主窗口,而不要在Xcode中打开并复制并粘贴以下密钥。

<key>CFBundleIcons</key>
<dict>
    <key>CFBundlePrimaryIcon</key>
    <dict>
        <key>CFBundleIconFiles</key>
        <array>
            <string>AppIcon57x57.png</string>
            <string>AppIcon57x57@2x.png</string>
            <string>AppIcon72x72~ipad.png</string>
            <string>AppIcon72x72@2x~ipad.png</string>
        </array>
    </dict>
</dict>

请注意,我仅包括示例解决方案,您需要将它们全部添加。


如果要在没有外部编辑器的情况下在Xcode中添加此密钥,请使用以下命令:

  • Icon files (iOS 5) -字典
  • Primary Icon -字典
  • Icon files -阵列
  • Item 0-字符串=AppIcon57x57.png 以及每个其他项目/应用程序图标。

现在,当您最终存档项目时,最终的.xcarchive有效负载.plist现在将包含上述要构建和使用的图标位置。

不要将以下内容添加到任何.plist中:只是Xcode现在将为最终有效负载生成的示例

<key>IconPaths</key>
<array>
    <string>Applications/Example.app/AppIcon57x57.png</string>
    <string>Applications/Example.app/AppIcon57x57@2x.png</string>
    <string>Applications/Example.app/AppIcon72x72~ipad.png</string>
    <string>Applications/Example.app/AppIcon72x72@2x~ipad.png</string>
</array>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.