IOS 静态库 和 动态库

Posted Dingzhijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 静态库 和 动态库相关的知识,希望对你有一定的参考价值。

库从本质上市一中可执行的二进制格式,可以被载入内存中执行
 
ios 中的静态库有 .a 和 .framework 两种形式;  动态库有  .dylib   和  .framework 两种,
后来 .dylib 被苹果换成 .tbd 的形式
 
静态库 和 动态库 区别
 
静态库和动态库是相对于编译期和运行期的,静态库在编译期会被连接到代码中,程序运行期将不再需要改静态库,
而动态库在编译期不会被连接到代码中,只有在程序运行期间才会被载入,所以在程序运行期间还需要动态库的存在.
 
总结
同一个静态库在不同的程序中使用时,每一个程序都需要导入一次,打包时也被打包进去,形成一个程序,
而动态库在不同的程序中,打包时并没有打包进去,只在程序运行时才会被你连接载入,如系统框架(UIKit,,Foundation等)
所以体积会小很多,但是苹果不让使用自己的动态库,否则审核就无法通过

以上是关于IOS 静态库 和 动态库的主要内容,如果未能解决你的问题,请参考以下文章

iOS 静态库和动态库相关

iOS 中的静态库与动态库,区别制作和使用

iOS 静态库和动态库对ipa包大小的影响

iOS中的静态库和动态库

iOS中的静态库和动态库

iOS里的动态库和静态库