静态库.a的制作,或framework的制作
来源:互联网 发布:.xyz域名查询 编辑:程序博客网 时间:2024/04/30 04:32
1、.a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件。
2、.a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用。
3、.a + .h + sourceFile = .framework。
4、.a只是静态库。framework既可以是静态库也可以是动态库。例如系统的framework就是动态库。
5、静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝。
6、动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。然而苹果是不会让开发者有自己的动态库的。
framework制作及使用
1、新建framework项目
2、添加相关的类文件
3、设置对外公开的头文件
4、设置支持的最低系统版本
5、设置支持的指令集(arm64、armv7、armv7s、i386、x86_64)
6、修改Info.plist文件中的Bundle OS Type code(由BNDL改成FMWK)
(1)Packaing-Warpper Extension:framework
(2)Linking-Mach-O Type:Static Library
(3)Linking-Dead Code Stripping:No
(4)Deployment-Strip Debug Symbols During Copy:No
(5)Deloyment-Strip Style:Non-Global Symbols
(1)生成模拟器使用的framework文件(选择模拟器运行-菜单栏-Product-Build,或快捷键command+B)
(2)生成真机使用的framework文件(选择真机Generic iOS Device运行-菜单栏-Product-Build,或快捷键command+B)
(3)查看framework文件(展开Products文件夹,然后右击编译生成的framework文件,选择弹窗中的Show in Finder)
9、在实际开发场景中,更希望的是framework,既可以在模拟器上运行,也可以在真机上运行。所以可以将模拟器和真机上运行的framework合并。合并时,在终端使用命令"lipo -create 模拟器framework文件路径 真机framework文件路径 -output 合并文件路径 "处理。
注意事项:指令集必须设置完整,否则使用时会出现异常,如下图所示
- 静态库.a的制作,或framework的制作
- iOS静态库.framework的制作
- IOS开发中制作属于自己的静态库.a、资源库.bundle、.framework
- IOS开发中制作属于自己的静态库.a、资源库.bundle、.framework
- iOS 静态库.a文件的制作
- iOS开发-静态库.a的制作
- iOS 静态库.a文件的制作
- iOS:.a静态库文件的制作
- iOS中的静态库.a的制作
- iOS静态库Framework制作步骤,以及遇到的坑
- .framework 的制作 .a的制作相对简单,以后补充
- 静态库的制作
- 静态库的制作
- 静态库的制作
- 静态库的制作
- 关于.a和.framework的制作
- iOS 开发中制作静态库.a、资源库.bundle、.framework
- 静态库框架framework制作
- Android逆向实例笔记—那些搜不到的中文怎么办?
- 使用Objective-C开发AppleWatch(一)关于Complication
- 无法将 匿名方法 转换为类型“System.Delegate”,因为它不是委托类型:解决方法
- 看我
- TortoiseSVN安装后右键无svn选项
- 静态库.a的制作,或framework的制作
- HTTP状态码(HTTP Status Code)
- 【转载】MySQL数据库迁移详细步骤
- PageHelper分页插件使用
- PHP中include和require的区别详解
- 三,储存过程(2)
- 2016夏季练习
- sql server 2008 r2附加数据库时出现-无法显示请求的对话框的解决方案
- 关于Ajax使用的总结