在iOS XCode项目中管理大量目标预处理器宏

时间:2012-12-14 02:58:20

标签: ios xcode xcode4

我的应用程序中有许多目标,每个目标都指定了项目使用的大量预处理器宏。它们可以从交换机到字符串和URL的定义。我开始难以通过xcode构建设置界面管理如此大量的这些,并且想知道具有更大的多目标项目的人会建议我做些什么来减轻痛苦。

一种解决方案是在每个目标中定义一个交换机,然后将所有定义转储到-Prefix.pch文件中,基本上具有与在构建设置中定义这些宏时相同的效果。

另一种解决方案是使用模块处理配置(可以是plist的包装器)并将具有相同文件名的不同plist捆绑到每个目标中。这样我就可以有一个很好的定义好的界面来访问不同的设置,并且能够在那里添加一些逻辑。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我的所有项目都包含一个Constants.h文件,用于处理字符串定义,各种标志,图像名称等,以及预处理器宏。我只是在我创建的每个课程中都包含Constants.h

我还在一些应用程序中有几个目标来控制UI主题和Web服务调用,所以我在Constants.h中执行以下操作:

#ifdef APPLE
#define IMAGE_LOGO "apple.png"
#endif

#ifdef MICROSOFT
#define IMAGE_LOGO "windows.png"
#endif

#ifdef LINUX
#define IMAGE_LOGO "penguin.png"
#endif

//etc...

我不确定它是否理想,但这完全符合我的需求,除了在每个目标上设置标志外,你不必乱用烦人的Build Settings UI(例如,APPLE=1 )。希望能帮助到你。