在XCode中编译多个目标时,如何确保某些文件不会包含在一个目标中

Jan*_*ann 3 iphone xcode copy conditional-compilation xcodebuild

我在stackoverflow上搜索了很长时间,使用我能想到的每个关键字来解决这个问题.我正在为iphone编程,我有一个精简和付费版本的我的应用程序.我按照此处的说明创建iPhone游戏/应用程序的精简版本以复制目标.这有效,现在我正在努力减少Lite版本.

主要问题?图片.精简版需要比付费版少几百张图片.所以,我在XCode中创建了两个组.Xcode中的一个"文件夹组" - 名为"FreeImages",另一个名为"ProImages".我希望所有FreeImages 包含在lite应用程序中,所有FreeImages ProImages都包含在付费应用程序中.我不在乎XCode认为这些组是虚拟文件夹.我将指令反转到一个点,并在XCode"PLUS_VERSION"中设置了环境标志(-D)我希望XCode基本上执行以下操作:

If (PLUS_VERSION)
{
 copy contents of FreeImages *and* ProImages where normally they go
}
else
{
copy contents of FreeImages where they normally go.
}
Run Code Online (Sandbox Code Playgroud)

任何人都知道从哪里开始告诉XCode有条件地将组内容复制到目标中?

Bra*_*son 10

对于要定向到特定目标的每个资源(或资源文件夹),可以单击资源并进行检查(通过右键单击并选择"获取信息"或单击"检查"工具栏选项).在该信息对话框中将有一个名为Targets的选项卡,您可以在其中检查要将资源(甚至源代码文件)合并到的目标,并取消选中您不需要的目标.

或者,我相信您可以在Xcode中导航到目标本身,单击其名称旁边的三角形以展开构建阶段列表,展开"复制捆绑资源"构建阶段,并从列表中手动删除任何资源.我希望复制到该目标.