4

我需要为同一目标的 iOS 设备和模拟器方案填充不同的 Info.plist。我如何实现它?问题如下:我的应用程序是 voip,因此我需要向 Info.plist 添加一个 UIBackgroundModes,但问题是当这个属性存在于 plist 中并且我运行 Simulator 方案时,Simulator 只是停留在启动屏幕上,而我即使按下主页按钮也不会做任何事情,控制台也不会显示任何内容。所以我想要一个不带 UIBackgroundModes 属性的 Simulator 方案的 plist 和第二个 - with。我可以用一个shell脚本来做,但由于这两种方案的脚本是相同的,我不知道如何区分它们......

TIA

4

2 回答 2

7

另一种解决方案:

在 Xcode 4.3(可能更早)中,您可以在 Info.plist 中使用预处理器定义。例如,您可以将 UIBackgroundModes 设置为 ${MY_BACKGROUNDMODES}

然后,在您的构建设置中,您可以为每个构建配置定义不同的 MY_BACKGROUNDMODES 值。

于 2012-03-01T02:40:27.133 回答
1

在项目视图中。如果您单击任何给定的组文件夹,则会在其内容拆分的上半部分显示一个表格列表。

最右边的列是一个复选框,它告诉您该项目是否包含在目标中。克隆您的调试目标配置和 plist。在您的模拟配置中包含一个 plist,在您的设备配置中包含另一个。

于 2010-12-18T16:15:51.763 回答