2016-06-14 65 views
0

我有几个应用程序使用相同的核心框架,因为每个应用程序都有一些小的差异,我正在寻找使用相关代码和参数构建框架的最佳方法。 最好的解决方案(即不太好),我发现是:为同一个项目编译不同的代码 - Swift框架

  1. 对于不同的代码编译 - 使用目标,其中包括不同类别的
  2. 对于不同配置采用不同的斯威夫特标志为每个配置(例如调试,发布...)

的问题是:

  1. 我使用的几个目标和每个目标重复的项目配置和我需要保持全部。这种方法可能会导致一些错误,如果我改变一个目标的配置,但忘记改变其他目标。
  2. 调试/释放& stagingA/stagingB /生产我创建特定的配置,而不是将它们组合起来(此解决方案是有问题的,因为每个分期,我需要复制它的发布和调试):
    1. 发布生产
    2. 调试生产
    3. 发布stagingA
    4. 调试stagingA
    5. 发布stagingB
    6. 调试stagingB

应用结构是:

  • 应用程式包括CoreFramework与甲
  • 应用B码的调整包括CoreFramework与乙

每个应用程序代码调整,调试,发布,制作...配置。这个配置影响的框架(在这些框架的配置运行也)

==>我在寻找其他/更好的办法的框架来配置我的应用程序项目的

回答

2

不要让“代码调整”基于哪个客户正在呼叫它。

构建您的框架,就好像它是由外部供应商提供的二进制版本一样。任何可能变化的行为都只能通过公共API的运行时配置来控制。

+0

我需要为每个应用程序“代码调整”,例如有公共API,我不想公开它的应用程序,而其他需要它。 –

+1

对不起,听到......这听起来像你目前的问题只是一个不好的设计的自然结果。 –