0

我正在尝试设置 xcode 以允许我使用相同的代码构建/发布 2 个应用程序,但具有不同的应用程序图标、资产和不同的数据库。

如果我有 2 个应用程序使用相同的代码:

  • app 1:水果列表(显示水果列表)
  • 应用 2:Veggie 列表(显示 Veggie 列表)

对于这两个应用程序,我将有一个唯一的捆绑 ID(当然)、相同的代码,但不同的图像和数据库。如何将 Xcode 设置为拥有 1 个项目并能够选择我想要构建的应用程序?

我似乎明白我们可以选择使用方案、目标或构建配置,但到目前为止,我发现比其他任何事情都更令人困惑。

欢迎对此提出任何建议/帮助!在这种情况下,拥有多个项目并将更改从一个复制到另一个,这听起来像是一个疯狂的解决方案。

谢谢你。

4

2 回答 2

1

选项 1

最简单的方法是拥有一个项目并向其添加多个“应用程序”目标。您需要确保每个目标都添加了正确的源文件(关于如何执行此操作的大量信息,包括:Xcode 轻松将多个文件添加到目标)。

正如您所提到的,每个目标都可以有一个单独的包 ID,但是您可以选择将哪些源文件/图像/等添加到每个目标中。您还可以在“构建设置”中为每个目标设置单独的构建标志、环境变量等。

您可以使用 Xcode 工具栏中的目标菜单(源文件选项卡上方)来选择要构建和运行的目标。

选项 2

另一个选项(或者实际上是选项 1 的变体)是在同一个项目中拥有 2 个应用程序目标(与选项 1 相同)并创建第三个目标,这将是一个框架。该框架可以封装应用程序之间的一些共享代码。例如,在我的一个应用程序中,我有一个在应用程序的 iOS 和 macOS 版本之间共享的音频引擎。该框架的源文件仅属于一个目标(框架),然后将框架添加为两个应用程序目标的依赖项。

于 2021-03-22T23:14:34.813 回答
1

您正在描述一个具有两个应用程序目标的项目。当您构建/运行时,只需将窗口顶部的方案弹出窗口切换到您想要的那个。

在此处输入图像描述

要在应用程序之间共享代码,只需向两个应用程序目标添加一个文件。

在此处输入图像描述

于 2021-03-22T23:23:25.070 回答