28

我正在开发一个 iOS 应用程序。现在它是一个应用程序和两个目标(应用程序和测试)。

接近发布我想把这个应用程序分成三个应用程序,其中包含大量共享代码和共享测试。(想想 App Store 的免费版和完整版以及不会发布的原型应用程序)。

您会在 Xcode 中设置多个项目(1 个库项目和 3 个应用程序项目)还是将所有项目都放在一个项目中并且只设置多个目标?

4

2 回答 2

33

我认为您在这里至少有3个选择:

  1. 单独的项目。跨项目共享代码更加困难,但是使用 Xcode 工作区,这是非常可行的。如果您对每个项目都有很多自定义,那么这可能是有道理的。

  2. 同一个项目,更多目标。这是通常的做法。这很容易,因为您对哪些文件进入哪个目标有一个非常清晰的概述。如果你有十几个左右的目标,那真的很容易处理。

  3. 分开 git 分支。我过去曾与此合作过。应用程序之间的差异(Info.plist、配置文件、数据文件)只是在相应的 git 分支中交换。如果您有大量数据并且不需要随时提供所有数据,这很实用。但是,如果您不熟悉 git,它的复杂性是相当大的。您可以创建 git 子模块以一次性更改共享代码部分。

于 2013-06-21T10:16:12.493 回答
2

我建议您采用混合方法,具体取决于您的需求

  • 如果您需要多个应用程序 - create Target,这正是它们的用途。您可以使用[关于]处理共享文件Target Membership

  • 如果您有可以分成模块的源代码 -ProjectWorkspace. CocoaPods 使用此技术

[Xcode Workspace vs Project]
[Xcode 组件]

于 2020-10-08T12:54:56.393 回答