iOS如何生成.a文件静态库

首先来谈谈为何要使用.a文件 Objective-c语言有.h .m 文件组成。静态库可以将 .m文件封装成一个.a文件,第三方应用程序只需要拿到这个.a文件和代码对应的.h文件即可使用静态库中封装的方法。IOS静态库适合去制作第三方提供的SD

第一步

1.首先创建一个新的工程,选择Framework

&:,在选择Cocoa Touch Static Library 工程名自己定义

2.接下来你会看到自动生成.h和.m文件 可以在.m文件中写你要的代码

3.我们来创建一个简单的代码

.h文件如下

4.接下来就是编译生成.a文件了

快捷键(command+B)选中真机编译对应生成的.a文件,然后点击show in Finder,然后拷贝出libStaticFramework.a文件,分别放在对应的文件夹里面,真机生成的.a文件放在iphones文件夹中,模拟器生成的.a文件放在Simulator文件夹中,同时再创建一个真机和模拟器生成的包

然后再按照刚才生成真机包libStaticFramework.a包方法,选中模拟器编译对应生成的libStaticFramework.a文件,然后点击show in Finder,然后拷贝出libStaticFramework.a文件到模拟器文件中.

5.添加成功后就可以直接使用了 但是需要注意的是 如果你是选择模拟器编译生成的.a文件那么在真机运行的时候是会报错的 所以为了可以使用真机和模拟器都可以使用.a文件可以合并成为一个.a文件 使用终端合成具体方法如下:

zhengxiaoyandeMacBook-Pro-2:ShangYou4 zhengxiaoyan$lipo -create/所在路径/Release-iphoneos/libGenerateFaile.a /所在路径/Release-iphonesimulator/libGenerateFaile.a-output/Users/zxy/Desktop/libUniversal.a

这样,就可以合并成一个通用的静态库,唯一的缺点是体积要大一点相对于真机和模拟器两个的总大小 之后将这个静态库拖到工程中即可

合并后会生成一个libUniversal.a

6.接下来就是将你合成的的libUniversal.a文件和StaticFramework.h引入到你想加入的工程中以及


下面是合成Demo  静态库的合成Demo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容