我有几个使用相同核心框架的应用程序,由于每个应用程序都有一些细微差别,我正在寻找使用相关代码和参数构建框架的最佳方法。 我找到的最佳解决方案(不太好)是:
- 针对不同的代码编译——使用包含不同类的目标
- 对于不同的配置,为每个配置使用不同的 Swift 标志(例如调试、发布...)
问题是:
- 我正在使用多个目标,每个目标都复制项目配置,我需要维护所有目标。如果我在一个目标中更改配置但忘记在其他目标上更改它,这种方法可能会导致一些错误。
- 对于调试/发布和 stagingA/stagingB/production,我正在创建特定配置而不是组合它们(此解决方案有问题,因为对于每个暂存,我需要复制它以进行发布和调试):
- 发布制作
- 调试生产
- 发布stagingA
- 调试 stagingA
- 发布stagingB
- 调试阶段B
应用结构是:
- 应用 A 包含 CoreFramework 并为 A 进行了代码调整
- 应用程序 B 包含 CoreFramework 并为 B 进行了代码调整
每个应用程序都有调试、发布、生产...配置。此配置会影响框架(这些配置也会在框架上运行)
==> 我正在寻找其他/更好的方法来配置我的应用项目
最佳答案
不要根据调用它的客户端在框架中进行“代码调整”。
构建您的框架,就好像它是由外部供应商提供的二进制版本一样。任何可能可变的行为都只能通过公共(public) API 由运行时配置来控制。
关于ios - 为同一个项目编译不同的代码 - Swift 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37813461/