zoukankan      html  css  js  c++  java
  • iOS制作Static Library(静态库),实现多工程的连编

    在iOS开发中,我们会发现一些偏底层或基础代码是直接可以复用的,当我们换一个项目,改变的只需要是偏上层的业务逻辑代码,所以我们可以把这部分 基础代码制作为一个静态库static library,并不断扩展,这样我们重新开发一个新项目,就可以直接引进这个静态库,再添加上层的业务逻辑代码即可,会大大提高我们开发的效率。

    下面以一个例子说明制作静态库和相关导入的必须操作。

    假设这个静态库为Commom,新工程为Example。

    首先,新建一个静态库,如图:

    点完成后就可以生成一个静态库了。然后把需要添加的基础代码添加就可。

    然后我们像平时一样建立的工程Example,把Commom.xcodeproj工程直接拖进Example,如图:

    由图可知,Example工程已经引用了Commom.xcodeproj.

    下面需要在Example工程的Build Phases找到Link Binary With Libraries,添加这个lib。

    然后下面是比较关键的添加对应的paths和flags。

    在Example的Build Settings找到Other Linker Flags,然后添加如图信息:

    其中必须需要注意的是,-all_load和-Objc是必须添加的,否则在使用commom里面的category会导致崩溃,这主要是没有在Other Linker Flags没有添加all_load,导致实际上没有真正导入这个文件。

    还需要在Build Settings找到User Header Search Paths添加如下路径:

    也就是添加Commom的文件路径。

    这样基本能完成静态库跟当前工程的连编。以后一些基础代码就可以放在commom,然后新建项目的时候就可以基于commom。

  • 相关阅读:
    对于Dubbo一些面试题自己的答案
    序列化和反序列化的简单理解
    学习Spring-Session+Redis实现session共享
    Java中的String,StringBuilder,StringBuffer三者的区别
    个人对数据结构的理解和总结
    LeetCode 101. Symmetric Tree
    LeetCode 100. Same Tree
    LeetCode 88. Merge Sorted Array
    LeetCode 83. Remove Duplicates from Sorted List
    LeetCode 70. Climbing Stairs
  • 原文地址:https://www.cnblogs.com/lingzhao/p/3346847.html
Copyright © 2011-2022 走看看