构建时的iOS App模块化

Sha*_*y D 5 xcode build-process objective-c ios

我有我的应用程序的主屏幕作为以下原型: 在此输入图像描述 考虑到这个主屏幕,我必须以这样的方式开发应用程序:这四个中的每个功能都应该在构建时可插拔.例如,

如果我设置一个像宏

#define FEATURE_1  0
Run Code Online (Sandbox Code Playgroud)

然后,主屏幕将只有3个瓷砖用于剩余的三个功能.此外,与feature-1相关的文件不应在生成的.ipa中编译.

当我开发这四个模块时,我保持所有类彼此独立.但问题是我有一个包含整个UI的故事板.现在,我必须以这样的方式分离UI和资源,如果关闭任何功能,则不应编译与该功能相关的文件.

我尝试过:我在某处读到将每个功能作为静态库来完成我的工作,但是,我无法弄清楚如何在构建时包含/排除静态库.此外,它没有解决我在故事板中分离视图的问题.

具体来说,我的问题是:

1)如何将特定文件复制到我的项目中,并根据上面定义的宏省略特定文件?如果有可能,请指导我做一个好方法.

2)如何在故事板上分离出观点?可以定义多个故事板并在构建时包含所需的故事板吗?请指导.

Moo*_*ose 4

答案 1:您不能仅使用宏。

为不同的配置创建多个目标,定义每个目标所需的宏,并切换文件包含复选框以仅在构建期间包含所需的文件。