iOS: 建立静态库,实现本身的API私有使用

1、介绍html

在开发中常常使用到第三方的静态框架,格式基本上就是.framework和.a格式的。使用时,会发现咱们只能使用没法修改,这就是静态框架的一个好处,私有性。内部实现的代码只有公开者本人知晓,对外界是隔离的,从劳动成果上讲,这也是对做者本人或者公司的一个代码保护。那么,咱们如何建立属于本身的静态库呢,下面我就简单地将步骤再次描述一下,在我以前的博客中有过详细的介绍,能够去瞅瞅:http://www.javashuo.com/article/p-gvzbfndp-gb.html
框架

 

2、比较模块化

注意:测试

(1)开发者的都是静态包: .framework 、.aui

(2)苹果官方都是动态包: .framework 、.dylibspa

(3)开发者建立的动态包.dylib是不容许被上架的命令行

做用:debug

(1)方便共享代码,便于合理使用htm

(2)实现程序模块化,对业务解耦blog

(3)开发sdk,保护具体实现代码

区别:

(1).a是一个纯二进制文件,不能直接使用,至少须要配合.h文件一块儿使用 

(2).framework除了包含二进制文件,还能够包含资源文件。

(3).framework = .a + .h + sourceFile

(4)建议使用.framework

 

3、步骤

3-1:建立.framework步骤

(1)建立.framework工程项目

(2)配置buildSetting属性字段 (有的配置会增长包体积,有的会减小包体积)

(3)拖入须要的类文件和资源包  (此处我没有引入资源包,能够本身建立并引入一个.bundle资源包)

(4)在BuildPhases中公开.h文件

(5)在静态包中引入引用的.h文件

(6)使用模拟器和真机分别在debug和release模式下编译

(7)show Finder静态包,查找编译成功的二进制文件

(8)使用lipo  -create  -output 命令行合并二进制文件

(9)选取模拟器和真机的任意一个静态包,使用合并的二进制文件替换选取的静态包的二进制文件

(10)将拷贝后的静态包拖入到测试项目中测试

 

3-2:建立.a步骤

(1)建立.a工程项目

(2)配置buildSetting属性字段,同上面建立.framework步骤2

(3)拖入须要的类文件和资源包  (此处我没有引入资源包,能够本身建立并引入一个.bundle资源包)

(4)在BuildPhases中新建New Headers并公开.h文件

(5)使用模拟器和真机分别在debug和release模式下编译,同上面建立.framework步骤6

(6)show Finder静态包,查找编译成功的二进制文件

(7)使用lipo -create -output命令行合并二进制文件生成一个新的.a包

(8)将这个新的.a静态包拷贝出来,同时将项目中的全部暴露的.h文件拷贝出来(若是有资源文件也要拷贝),放到一个文件夹下。此时,将该文件夹拖入到测试项目中测试

相关文章
相关标签/搜索