美文网首页
iOS静态库和动态库

iOS静态库和动态库

作者: smartLife | 来源:发表于2016-07-28 17:17 被阅读34次

呈现方式

静态库:.a, .framework
动态库:.framework, .dylib(现在苹果改成了.tbd)

区别

静态库
  • 编译时被链接到目标代码中,如果有多处引用存在多次冗余拷贝,占用内存
  • 需要依赖.a+.h+资源
动态库
  • 运行时调用,不会产生冗余调用,占用内存小
  • framework文件可以直接使用
静态库架构及机型系统对照

静态库对应真机和模拟器两种形式,以下先列举下不同机型对应的架构:

  • 模拟器
    • iPhone4s~5 : i386
    • iPhone5s~6plus : x86_64
  • 真机
    • iPhone3gs~4s : armv7
    • iPhone5~5c : armv7s
    • iPhone5s~6plus : arm64
  • 机型和系统对照
    • 4s: iOS6+
    • 5: iOS6+
    • 5s/5c: iOS7+
    • 6: iOS8+
    • 6s: iOS9+
生成静态库步骤
  • 选择需要暴露的头文件,Build Parses->Copy Files添加,生成后在目录下的include里会找到这些文件


    暴露头文件
    生成后的头文件
  • command+B搞定
生成静态库命令
  • 查看架构信息 lipo -info xx.a/aa.a
    模拟器打包出来的架构
  • 合并静态库,主要场景是在模拟器和真机需要合并时,lipo -create xx.a yy.a -output zz.a
  • 分离静态库,主要将三方提供的库拆解成自己想要的,lipo xx.a -thin armv7 -output yy.a

相关文章

  • iOS静态库及动态库

    2018-06-19 浅析静态库链接原理编译原理以及什么是静态库和动态库 转之: iOS 静态库和动态库(库详解)...

  • iOS静态库的开发及项目中调试

    简介   iOS中,库有两种:静态库和动态库,静态库分为.a和.framework,动态库分为.dylib和.fr...

  • iOS静态库与动态库的区别与打包

    iOS静态库与动态库的区别与打包iOS静态库与动态库的区别与打包

  • 静态库与动态库

    在iOS中,库分为静态库和动态库,它是程序代码共享的方式。 iOS静态库的形式:.a和.framework iOS...

  • iOS 封装.framework 以及使用

    .framework是什么? “静态库”和“动态库”有什么区别? iOS里静态和动态库形式 .a与.framewo...

  • iOS开发集锦之 2017.04.17

    1. iOS 静态库,动态库与 Framework 浅析 作者:Jenaral描述: 静态库与动态库的区别;iOS...

  • Framework 动态库 & 静态库

    关于 动态库 & 静态库 ,参考下面文章:iOS开发关于"框架"的那些事iOS 静态库,动态库与 Framewor...

  • iOS创建.framework文件

    iOS的库分为 .a 纯静态库只能包含代码 .dylib 动态库 .framework 包含动态库和静态库,可...

  • iOS 静态库和动态库的制作

    静态库和动态库 一、静态库和动态库的存在形式 静态库: .a 和 .framework 动态库: .dylib 和...

  • 创建静态库

    iOS深入学习(创建静态库static library) 库包含静态库和动态链接库,他们之间区别是:静态库可以编译...

网友评论

      本文标题:iOS静态库和动态库

      本文链接:https://www.haomeiwen.com/subject/ybmajttx.html