1

我的应用程序中有许多目标,每个目标都指定了项目使用的大量预处理器宏。它们无处不在,从开关到字符串和 URL 的定义。我开始无法通过 xcode 构建设置 UI 来管理如此大量的项目,并且想知道拥有大型多目标项目的人会建议我做什么来减轻痛苦。

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

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

有什么建议吗?

4

1 回答 1

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...

我不确定它是否理想,但这非常适合我的需求,您不必弄乱烦人的构建设置 UI,除非在每个目标上设置标志(例如,APPLE=1)。希望能帮助到你。

于 2012-12-14T03:15:21.443 回答