制作.a
1.新建工程commend+shift+N选择
2.完成后在目录下新建你需要的类
3.公开想要暴露的头文件myTest.h 选中Targets下面的静态库-->Build Phases-->CopyFiles 点击+添加你要暴露的文件
4.选择Bulid-Settings下面的Architectures把Build Active Architecture Only修改为NO,否则,生成的静态库只支持当前设备
5.在真机和模拟器环境下各编译一次,完成之后会看到libmyfirstA.a变成了黑色
命令 lipo -info可以用来查看静态库支持的框架
选中libmyfirst A.a 右键show in finder可以看到 有 支持真机和模拟器的两个.a文件
要想该静态库既支持真机又支持模拟器需要把两个.a文件合并
使用终端命令:lipo -create 第一个.a文件的绝对路径 第二个.a文件的绝对路径 -output 最终的.a文件路径:
cd product文件的路径
我们看到生成了新的.a文件 newTest.a这个文件是同时支持真机和模拟器的,然后,新建一个文件夹把newTest.a和要暴露的.h文件放到这个文件夹中,我们把这个文件夹导入工程就可以用了
.framework
新建工程选择 Cocoa Touch Framework
deployment Target 选择较低版本
选择建的是静态库
将要暴露的.h文件从project中移动到public中
将你新建的需要暴露的头文件导入系统自动生成的.h文件中
在真机和模拟器上都编译一次
使用终端命令:lipo -create 第一个libraryFramwork可执行文件的绝对路径 第二个libraryFramwork文件的绝对路径 -output 最终的文件路径(可以直接选择第一个或者第二个文件的绝对路径,新生成的随即替换掉之前的libraryFramework):
然后将被替换掉framework可执行文件的libraryFramework.framework导入到工程中即可使用,
若创建的是动态framework则需要在Embedded Binaries中添加这个.framework库 否则会报image的错误