2016-06-14 49 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

對不起,聽到......這聽起來像你目前的問題只是一個不好的設計的自然結果。 –

相關問題