美文网首页
Xcode子工程的具体使用

Xcode子工程的具体使用

作者: iOS猿类__冬眠的考拉妹妹 | 来源:发表于2020-03-04 18:11 被阅读0次

            一般我们创建多个子工程多适用于:代码抽层,业务逻辑和数据处理高度抽离、模块化,例如可以将model层和network层抽离,一个项目只建立一个公共工程,每次新建项目,只需要依赖这个工程就行了,代码模块化之后我们可以对每一个模块持续优化集成,便于实现一些更复杂的需求和结构设计(分解项目,达到低耦合);

    a. 创建正常的主项目(AddSubProjectDemo)以及子工程(subProject);这里注意一下子工程创建的时候是Cocoa Static Library;

    两个工程创建完毕如下:

    b. 添加子工程及其依赖;

    子工程拖进主工程文件目录中

    打开主工程添加子工程,选择Drag或Add File to "AddSubProjectDemo",结束后如图:

    c. 在工程target -> Build Phases -> Link Binary With Libraries中添加libsubProject.a

    d.在工程target -> Build Settings -> Search Paths -> Header Search Paths中加入子文件目录;

    关于Header Search Paths这里说明一下:

    1.$(inherited)

    target在设置自己路径的时候如果加了这个,那么就是继承project里设置的路径。如果不需要继承就不加,要不然乱加有可能整混导致路径错误。

    2.带引号的路径和不带引号的路径

    带引号主要是预防路径里有空格导致本来一个路径变成了两个路径,因为空格分开就被解析位两个路径,所以最好路径带上引号。

    3.$(SRCROOT) / $(PROJECT_DIR)基本没啥区别,都是指向*.xcodeproj所在的路径

    4.recursive遍历该目录,non-recursive默认路径设置;不遍历该目录.   

    e.工程环境配置好后,本例在子工程的subProject.h 和.m加个测试方法,然后在主工程中调用实现;

    一般使用subProject的时候,都是和workspace一起使用的,多个子工程统一由一个workspace管理, 复杂项目的拆解可以考虑subProject+workspace+cocoapod 方式组合完成;(demo参考g ithub上的subproject)

    相关文章

      网友评论

          本文标题:Xcode子工程的具体使用

          本文链接:https://www.haomeiwen.com/subject/hrmblhtx.html