概述&动机
我想设置一些仅为iOS设备构建的方案.
例如,我从来不想用模拟器目的地构建一个Ad Hoc构建.为Ad Hoc构建选择模拟器目的地的能力只是噪音.
期望的行为
实际行为
我试过的
>我在配置中删除了“支持平台”中的“iphonesimulator”值,这些配置是设备专用的,如下所示:
>在Ad Hoc方案设置中,我禁用了运行和配置文件的步骤.我离开了档案步骤
>对于所有构建步骤(包括禁用的),我将构建配置设置为“Ad Hoc”,以前仅设置为iphoneos.
结果到目前为止
我仍然可以在方案下拉列表中选择Simulator作为目的地:
但是,如果我运行模拟器目标的方案,我会得到一个预期的适当的错误:
这对我自己来说会更好一些,我的团队只能隐藏这些无效的目的地.
有没有更好的方法来管理给定方案可用的目的地?
解决方法
更新答案
嗯.这对我来说有一个目标.我从配置中的“支持平台”中删除了平台,并从计划中消失.
然后我尝试添加另一个配置,允许模拟器,它仍然只是设备目标可见.然后我复制了目标并添加到iphonesimulator …中,模拟器显示在两个目标的方案中.
不幸的是,我认为可用的目的地是可用于所有目标的聚合列表.提交错误报告:http://bugreporter.apple.com
另一个更新
啊!它看起来像更新Scheme选择器的Xcode错误!我配置了每个目标的设置 – 一个可以省略模拟器,另一个设置保留它 – 然后关闭并重新打开该项目.神奇的是,第一个目标只有iOS设备目标,而另一个目标则具有设备模拟器目标.
所以,答案可能是复制你想要的目标,并设置它们只允许设备,然后确保你的方案被正确命名,所以你知道正在建立哪个目标.关闭并重新打开项目,列表应该按照您的期望显示.