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

静态库和动态库

作者: gxatios | 来源:发表于2018-01-04 13:51 被阅读10次

静态库:.a 和 .framework
动态库:.tbd(.dylib) 和 .framework
静态库:链接时会被完整的复制到可执行文件中,被多次使用就有多份拷贝。
动态库:链接时不复制,程序运行时由系统动态加载到内存,系统只加载一次,多个程序共用(如系统的UIKit.framework等),节省内存。
但是苹果不让使用自己的动态库,否则审核就无法通过。

.a文件是一个纯二进制文件,不能直接拿来使用,需要配合头文件、资源文件一起使用。
将静态库打包的时候,只能打包代码资源,但是图片文件、本地json文件和xib等资源文件无法打包进去,使用.a静态库的时候需要三个组成部分:.a文件+需要暴露的头文件+资源文件;
.framework文件内部除了有二进制文件(如下图黑色文件)之外还有其他的资源文件(相当于:.framwork文件=黑色二进制文件<.a文件+.h文件>+资源文件<图片、以及本地的html5,json,plist等),可以直接拿来在工程中使用。

当你创建一个framework文件时,系统“默认”是一个动态库的格式,如果想做成静态库,需要在buildSetting中将Mach-O Type选项设置为Static Library就行了!

静态库文件的版本(4种)
真机-Debug版本
真机-Release版本
模拟器-Debug版本
模拟器-Release版本
Debug(调试)版本
1.含完整的符号信息,以方便调试
2.不会对代码进行优化
Release(发布)版本
1.不会包含完整的符号信息
2.的执行代码是进行过优化的
3.的大小会比Debug版本的略小
4.在执行速度方面,Release版本会更快些(但不意味着会有显著的提升)

设备的CPU架构
模拟器:
4s~5 : i386
5s~7p : x86_64

3gs~4s : armv7
5~5c : armv7s (静态库只要支持了armv7,就可以跑在armv7s的架构上)
5s~7p : arm64

https://www.jianshu.com/p/c8366e4f9378
http://www.cocoachina.com/ios/20161109/18031.html

查看静态库支持的框架
lipo -info framework下的二进制文件名字

合并模拟器和真机的静态库:
lipo -create 第一个framework下二进制文件的绝对路径 第二个framework下二进制文件的绝对路径 -output 最终的二进制文件路径

相关文章

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

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

  • 静态库和动态库

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

  • Swift 静态库调研

    一、关于库的背景知识1、静态库和动态库静态库动态库系统动态库Cocoa Touch Framework静态库 v....

  • iOS 静态库封装

    静态库和动态库 静态库和动态库存在形式 静态库:以.a 和 .framework为文件后缀名。 动态库:以.tbd...

  • iOS-SDK从无到有

    A、关于静态库和动态库 静态库:.a和.framework ,动态库:.dylib和.framework。.fra...

  • 自定义三方SDK静态库、.framework

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

  • iOS静态库与动态库

    静态库与动态库 存在形式: ①静态库:.a 和 .framework②动态库:.dylib 和 .framewor...

  • 学习笔试--静态库和动态库

    静态库和动态库的存在形式 静态库:.a和.framework 动态库:.dylib和.framework 创建自己...

  • iOS开发-----静态库.a的制作教程

    (1)静态库和动态库的存在形式 静态库:.a和.framework 动态库: .dylib 和 .framewor...

  • 打包SDK和Framework

    库:分为动态库和静态库(目前苹果不支持上传动态库) 静态库:.a和.framework 动态库:.dylib和.f...

网友评论

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

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