iOS Xcode创建静态库

2019-02-14  本文已影响0人  赑屃王者

一、静态库和动态库的区别

静态库:
1.模块化,分工合作。
2.避免少量改动经常导致大量的重复编译链接。
3.也可以重用,注意不是共享使用。
动态库:
1.使用动态库,可以将最终可执行文件体积缩小。
2.使用动态库,多个应用程序共享内存中得同一份库文件,节省资源。
3.使用动态库,可以不重新编译连接可执行程序的前提下,更新动态库文件达到更新应用程序的目的。
备注:苹果禁用动态库,即你使用了动态库,审核也是不让通过的。

二、使用Xcode创建静态库

1. 创建静态库工程

新建工程选择 iOS -> Framework&Library -> Cocoa Touch Static Library


创建静态库工程

2. 创建完成后在 .h 和 .m 里面创建方法和输出信息

3. 点击 Build Phases -> Copy Files,点击加号弹出项目中所有的文件.h和.m文件,这里的意思是要你添加你完成封装之后让别人能够看到的文件,选中文件之后点击add进行添加


注: 如果项目中使用类目的话,会碰到链接问题。
解决的办法就是需要同时在生成静态库的工程和使用静态库的工程中使用“-all_load”编译选项,即在 target -> Build Settings -> Other Linker Flags 选项添加“-all_load”。

4. 选择Edit Scheme 将BuildConfiguration下的Debug更改为Release

5. 进行模拟器编译和真机编译,你会发现左侧的liblogNews.a文件由原来的红色变为现在的黑色

6. 将模拟器 .a 文件和设备真机 .a 文件合并成一个文件

(1)找到模拟器.a和真机.a文件
(2)在终端输入lipo -create 模拟器.a文件的路径 真机.a文件的路径 -output 合并后的保存路径我们就得到合并之后的.a文件

7. 使用时将.a 文件拷贝进去就行了

上一篇下一篇

猜你喜欢

热点阅读