今天有个朋友问了个问题,工程内引用其他工程如何实现,可以在工程里修改,解释了半天我才知道他问的其实就是静态库。
一般对于自己开发过程中的静态库不会做成闭源的,主要是为了以后的扩展和修改,这个时候就用到了所谓的可在工程内修改的静态库。
首先创建一个静态库
写了简单的方法用于测试,这里给出的是只是一个输出打印
ok,在.m里实现该方法
编译一下,不用运行。不管你编译不编译都会发现products下的.a文件是红的,没关系,不耽误使用。但必须编译
在finder中找到该工程
打开你需要引用静态库的工程,这里我又创建了一个新的工程,并将在finder中的libary.xcodeproj拖入到你的工程中
下面是这部很重要,关系到静态库能不能使用的问题
1.在link binary with libaries中将静态库的.a文件添加进来
2.引入静态库的.h文件。如果你静态库的类很多,最好把所有的.h文件放在同一个.h中,我们在调用某些第三方sdk时经常会发现只需引用一个.h文件就可以引用到其库中的所有.h,就是这样封装的.做完这些就可以调用方法测试可
方法调用成功。在此工程内修改一下静态库的方法
然后看一下打印结果
竟然又她妈的成功了