iOS 静态库制作 .a .framework .bundle

一、最近项目需要(做SDK)所以研究了一下静态库的制作以及图片的导入。

二、下面主要以截图的方式说明打包静态库的过程。

1、.a 的静态库步骤如下:

1)首先新建工程选中 Cocoa Touch Static Library 然后点击Next按钮。

a.1.png

2)然后起名MJCASDK,注意:这时候会帮我们自动创建和工程名字一样的类文件(包含.h 和 .m),此时Products文件下的libMJCASDK.a文件是红色的。
a.2.png

3)相关配置。公开公共接口文件和相关方法,如下图点击New H eaders Phase:


a.3.png

接着直接把需要暴露出来的.h文件拖到Public列表下:


image.png

4)以上算是初步配置完善,注意,如果静态库中引入了类别(Category)的话,此时打成静态库是没有问题的,但是在用这个静态库的工程中,调用Category中的方法时会有找不到该方法的运行时错误(selector not recognized),解决办法是:在使用静态库的工程中配置other linker flags的值为-ObjC。

5)配置完成之后分别在模拟器和非模拟器上编译一下,这时候Products下的libMJCASDK.a文件就变黑色了,然后点击show in finder 查看如下图。


image.png

6)最后将模拟器和真机上的.a文件合并成一个文件即可。命令如下:

lipo -create  真机版本.a静态库路径   模拟器版本.a静态库路径  -output  合并后的.a静态库路径

注意中间有空格;

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

推荐阅读更多精彩内容