IOS framework

1.动态库与静态库的区别
静态库:连接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝;
动态库:连接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存
系统的.framework是动态库,我们自己建立的.framework是静态库

.a与.framework的区别
a. .a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件
b. .a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用
c. .a + .h + sourceFile = .framework

3.打包环境

a.将Mach-O Type设为Static Library, framework可以是动态库也可以是静态库,对于系统的framework是动态库,而用户制作的framework只能是静态库;
选中XMFramework->Build Settings->Mach-O Type(搜索mach)
b.Build Active Architecture Only 修改为NO, 否则生成的静态库就只支持当前设备的架构;
c.iOS Deployment Target, 静态库需要支持的最低版本号要小于等于主项目的版本号
d.Valid Architecture 支持的iOS的CPU架构

framework 模拟器版本和 release 版本合并命令:

lipo -create + 上面两个文件的路径+ -output + 合成后文件的输出路径
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容