生成.a

本文详细介绍如何在iOS中创建并使用静态库(.a),包括添加文件、资源调用、编译选项配置等内容。同时也讨论了如何处理第三方库依赖及框架冲突等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.新建静态库工程

2.将.h .m 添加到工程

3.将图片 plist文件放入一个文件夹,将此文件夹改扩展名为.bundle.添加到工程。

调用资源方式参考http://www.cnblogs.com/ios8/p/ios-static-a.html

4.选择设备build一下,选择模拟器build一下

5.用终端进到 到生成的.a的目录 lipo -create Release-iphoneos/libtest_a.a Release-iphonesimulator/libtest_a.a -output libtest_a.a

用到的是最后output的 libtest_a.a


6.使用的时候将.a、.bundle和第三方库以及第三方库需要的framwork添加到工程

7.设置build settings-> other linker flags  添加-all_load

参考资料:Xcode里-ObjC, -all_load, -force_load

Xcode添加静态库以及编译选项配置常见问题

注意: 自己的.a中用到第三方framwork,找不到类,以下是网友解释 点击打开链接

framework 的第三方库,只是参与link,并不会 build 进你自己新建的 .a的binary,
所以,你的的项目必须同时引用 你自己的.a 和 这个.a引用的所有的地方 framework(.frameworkj结尾的)
同理,可以可以控制引用的第三方.a文件不被打入新的.a,只要在静态库项目的binary里删除.a引用,但是是searchpath里保留,一样可以编译通过,这样可以避免耦合导致的多 framework冲突,特别是公用一些第三方基础库,比如 sdwebimage之类的


.a .bundle .framwork的区别

iOS库 .a与.framework区别








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值