xcode - 限制或更改 Xcode 4 中的方案目标?

标签 xcode ios xcode4

概述和动机

我想设置一些专为 iOS 设备构建的方案。

例如,我从不想构建带有模拟器目标的 Ad Hoc 构建。为 Ad Hoc 构建选择模拟器目标的能力只是噪音。

期望的行为

Desired - only iOS Device

实际行为

Actual

我尝试过的

  • 我在旨在仅供设备使用的配置中删除了“支持平台”中的“iphonesimulator”值,如下所示:

Configuration Support Platforms

  • 在 Ad Hoc 方案设置中,我禁用了运行和配置文件步骤。我离开了存档步骤

steps

  • 对于所有构建步骤(包括禁用的步骤),我将构建配置设置为“Ad Hoc”,之前仅将其设置为 iphoneos

到目前为止的结果

我仍然可以在方案下拉列表中选择模拟器作为目的地:

Simulator still availabke

但是,如果我使用模拟器目标运行该方案,我会收到一个预期的、适当的错误:

The selected run destination is not valid for this action.

这对我自己和我的团队来说会好得多,可以隐藏这些无效的目的地。

是否有更好的方法来管理给定方案的可用目的地?

最佳答案

更新的答案

嗯。这对我有一个目标。我从配置中的支持平台中删除了平台,它们从方案中消失了。

然后我尝试添加另一个允许模拟器的配置,它仍然只是设备目标可见。然后我复制了目标并添加到 iphonesimulator ... 中,模拟器出现在两个目标的方案中。

不幸的是,我认为可用目的地是所有目标可用目的地的汇总列表。提交错误报告:http://bugreporter.apple.com

另一个更新

啊!它看起来像是更新方案选择器的 Xcode 错误!我配置了每个目标的设置——一个省略模拟器,另一个保留它——然后关闭并重新打开项目。神奇的是,第一个目标只有 iOS 设备目标,而另一个目标有设备 + 模拟器目标。

因此,答案很可能是复制您想要的目标并将它们设置为仅允许设备,然后确保您的方案已正确命名,以便您知道正在构建哪个目标。关闭并重新打开项目,列表应该会如您所愿地显示出来。

关于xcode - 限制或更改 Xcode 4 中的方案目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5356146/

相关文章:

xcode - 在 High Sierra 10.13.6 上将 Xcode 10.1 更新到 10.2

ios - 将列表排序为 TableView 索引的部分

iphone - xcode 4 第二个目标?

iphone - UIView 中的两个 UITapGestureRecognizer

core-data - 将 mogenerator 集成到 Xcode 4 中

iphone - 仪器在 xcode 4.2 模拟器中不起作用

ios - 如何在 xcode 5 中创建相对约束?

objective-c - 网络服务器 NSURL NSURLConnection

ios - 为什么我的 subview View 不会在界面生成器中使用自动布局来遵循约束

php - 使用 PHP 中的 Urban 飞艇自定义 iOS 负载