首页 > 解决方案 > 从 Xcode 项目中导出文件

问题描述

我目前有一个带有应用程序项目和 pod 项目的 Xcode 工作区(通常情况下)。我想“导出”一些包含类和结构的文件,这些文件将为即将开始的新项目做准备。这些文件彼此完全分开,不应作为库或框架导出,因为这需要保持所有内容的更新。相反,我宁愿将这些文件带出应用程序项目,但将它们保留在工作区中。有可能吗?如果是这样,我怎样才能实现这个目标?

标签: iosxcode

解决方案


当您想保留您的通用代码并能够在两个项目中将其作为一个代码进行维护时,我建议您仍然使用框架。很难从您的问题中看出您所说的“因为这需要保持一切更新”是什么意思,但是在您的工作区中使用框架在 Xcode 中的效果非常好,并且您在框架中所做的任何更改都会立即反映在您的代码中。所以根本不需要额外的部署工作。为此,您只需执行以下操作:

  1. 创建一个新项目选择框架
  2. 创建项目时,从下拉菜单中选择您的工作区(在您选择项目文件夹位置的步骤中)
  3. 在新创建的框架项目中的 Xcode 文件导航器中,打开应该包含的“产品”目录(红色)FrameworkName.framework
  4. 打开您的主要项目目标设置并打开General,向下滚动到Frameworks, Libraries...并将该 .framework 文件拖到此列表中

就这些。现在您可以在代码中使用您的框架。只需将其导入您想要的任何 Swift 文件中。

如果此时您担心需要添加import MyFramework到使用它的每个 Swift 文件中,那么有一个快捷方式。你可以简单地添加一个新的 Swift 文件并使用类型别名来避免这个问题:

import MyFramework

typealias Class1 = MyFramework.Class1
typealias Class2 = MyFramework.Class2
typealias Class3 = MyFramework.Class3

不是最干净的解决方案,但它可以完成工作。

另一方面,如果您希望提取文件并在新项目中使用它们但不共享代码。因此,每个项目最终可能会以这些文件的不同实现而告终,然后您需要复制这些文件。您可以通过复制源文件本身来最简单地使用文件系统。

然后,您可以将它们放入任何您想要的工作区。如果您希望当前没有项目包含这些文件,您可以简单地在 Xcode 中选择文件并取消选中文件设置中所有项目的目标成员资格。


推荐阅读