是否可以使用相同的项目在Xcode 4上生成两个不同的IPA?一个用于iPhone,一个用于iPad?

时间:2012-04-17 00:20:46

标签: iphone ios xcode4 xcode4.3 ipa

我目前拥有通用iOS应用程序,但是使用新的iPad3设备我们需要为该特定设备添加资源/精灵,问题在于由于巨大的新屏幕,IPA的大小变得难以置信。我想知道是否可能只有一个可以生成两个不同IPA的Xcode 4项目,一个具有目标:iphone和其他目标:ipad,也可以包含或排除文件,具体取决于文件扩展名,例如blah-ipad .png不会出现在iphone版本上。 谢谢!

2 个答案:

答案 0 :(得分:6)

@Conrad Shultz对于你为什么不应该将现有的付费应用分成两部分是正确的。

对于尚未发布应用程序或应用程序免费的用户,值得知道您可以通过右键单击(或按住控件单击)并选择“复制”来复制目标。我很确定Duplication只能通过这个上下文菜单提供。更明显的“添加目标”选项涉及创建一个全新的目标并手动复制现有目标的内容和设置。

XCode UI showing Target context menu and Duplicate option

一旦有多个目标,就可以指定每个目标分配的资源。

修改:如果您有iPhone目标和iPad目标,则还需要更改“设备”设置。

XCode UI showing Target Membership selection for an image resource

如果您有大量资源,请考虑将它们包含在包含文件夹参考的文件夹中。然后,您可以指定整个文件夹的目标成员资格,而无需更改单个文件。这将更改捆绑中这些资源的路径,因此请进行相应的计划。

答案 1 :(得分:1)

是和否。

您当然可以为不同的产品设置不同的构建目标(和方案),针对不同的设备系列,不同的架构,甚至是完全不同的平台(OS X与iOS)。您当然可以在每个资产中包含不同的资产。我个人经常这样做,所以如果你想做什么,请告诉我,我会尽力提供进一步的细节。

无法做的是将单个产品的多个IPA提交到App Store。如果您已经通过App Store分发通用应用程序,那么您唯一的办法就是提取它并使用新的包标识符,产品名称等创建两个新的应用程序(我不,但在这一点上我可能是错的,你甚至可以将Universal应用程序降级为单一家庭应用程序,但这是你必须在开发人员/ App Store文档和协议中查看的内容。)

如果您选择此路线,则会强制现有用户再次以全价购买新应用。这可能会被客户很难接受。如果我是你,我会看看尺寸差异是否真的大到可以担心,如果是这样的话,看一下跨设备重用资产的策略(例如,在@ 1x设备上缩小更高分辨率的图像),尽管如此引入了可能的性能损失。