我正在深入研究iOS开发,我计划构建一些使用我自己的可重用代码的基本应用程序。当我更新包含我的可重用代码的文件时,我希望这些更新能够反映在使用它们的所有Xcode项目中。我有什么方法可以做到这一点?
提前感谢您的帮助!
答案 0 :(得分:4)
有几种方法可以做到。
如果将“可重用代码”分成库,则可以将其打包为单个项目(编译为静态库),然后将它们链接到主项目(编译成可执行文件)。有点棘手,但这是“正确”的方式。 (不像Visual Studio的解决方案/项目范例那样灵活或简单,但这是另一天的咆哮。)
您也可以直接将包含源文件的目录拖放到Project窗口中,使用“Create Folder References”或“Recursively create groups”。 (无论哪种方式,如果只需要源文件的一个副本,则不希望使用顶部的“复制项目”复选框。)
我已经完成了这三项工作。
您可能希望从后者开始 - 将“可重用代码”分组到某个文件夹(因此只有一个副本),然后使用“递归创建组”将该文件夹拖放到项目中。一个警告:如果您在多个项目中执行此操作,并且稍后您想要将其从项目中删除,请不要使用该选项将其发送到垃圾箱,否则您的其他项目可能会搞砸。
答案 1 :(得分:1)
这听起来像是你可以使用Git和分支的东西。
答案 2 :(得分:1)
创建一个静态库项目,然后使用Xcode的项目间依赖项功能以正确的顺序构建它们并将应用程序与静态库链接
答案 3 :(得分:0)
我想到的一个解决方案是构建一个静态库项目,但仅用它来测试编译该库中的可重用代码。然后将该库项目的可重用源代码子目录符号链接到使用该代码的所有其他项目中。这样,所有源代码都可以在任何项目中使用,我在可重用代码中所做的任何更改都会立即反映在其他任何位置(无复制步骤)。当然,在该子目录中使用良好的源代码修订控制方法,以便我可以对其进行版本化,比较更改,还原等等。
答案 4 :(得分:0)
正确的方法是创建一个库。在iOS中,您仅限于静态库,但动态库和框架是其他常见的可能性(例如,如果您的目标是OS X)。
配置它(使用libStatic作为静态库的名称,在此示例中使用App作为应用程序):
1)创建libStatic项目,并将其配置为编译您选择的文件
2)将libStatic.xcodeproj添加到App.xcodeproj。这会添加项目符号,索引和对App项目的引用。
(其余步骤全部在App.xcodeproj中进行)
3)双击依赖于liStatic的目标
4)导航到“常规”选项卡
5)单击依赖项列表下的“+”,然后将libStatic目标添加到依赖项中。创建此关联/依赖项非常重要,这样当您在App中开发时,libStatic目标将保持最新(它将在App之前构建)。
6)导航到组&中的libStatic项目参考。文件树。如有必要,单击(展开)显示三角形以查看libStatic的产品。
7)将相应的产品从libStatic项目引用拖到App目标的链接阶段。
8)清理,构建,运行