静态库的制作

静态库和动态库:

1.静态库:.a和.framework

@1.链接时,静态库会被完整地复制到可执行文件中,被多次使用就有多分冗余

@2.核心代码封装,不让别人看


lipo -info +静态库 查看静态库支持哪些架构

i386:iPhone模拟器 3gs ->4s

x86_64:iPhone模拟器 5s -> 6p


arm7:iPhone 3gs ->4s

arm7s:iPhone 5 ->5c

arm64:iPhone 5s - 6p


debug和release版本

静态库文件版本(4种)

1.真机-Debug版本

2.真机-Release版本

3.模拟器-Debug版本

4.模拟器-Release版本


调试版本(Debug版本) VS 发布版本(Release版本)

- 调试版本会包含完整的符号信息,以方便调试

- 调试版本不会对代码进行优化


- 发布版本不会包含完整的符号信息

- 发布版本的执行代码是进行过优化的

- 发布版本的大小会比调试版本的略小

- 在执行速度方面,调试版本会更快些,但不意味着会有显著的提升


合并静态库.a文件

lipo -create Debug-iphoneos/libTools.a Debug-iphonesimulator/libTools.a -output libTools.a

@1.合并的好处,开发过程中既可以在真机上调试又可以在模拟器上调试

@2.合并.a坏处,如果静态库太大,合并打包后,会非常大,因此很多第三方的静态库的.a是区分版本的

@3.今后在使用静态库时要注意版本



2.动态库:.dylib和.framework

@1.链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存

需要注意的是:项目中如果使用了自制的动态库,不能上传到Appstore


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值