美文网首页
制作frameWork,看我就够啦

制作frameWork,看我就够啦

作者: 不掉头发的程序猿 | 来源:发表于2019-02-02 10:21 被阅读0次

    因公司业务就是制作SDK,本猿也不得不来封装下Framework了,话不多说看步骤


    1.新建工程文件工程配置

    framewrok的创建

    2.FrameWork的5个xocde设置

           2.1     设置framework-build Setting -Architectures添加armv7s

           2.2      设置framework-build ActiveArchitectures only设置为NO

     2.3        设置Build Setteting - Linking - Mach -O Type 设置为静态库static Lobrary

    2.4          如果你项目中含有类别,你需要添加Build Setteting - Linking - Other Linker Flags 添加-Objc

    2.5     设置您的工程文件最低支持的版本也就是FrameWork支持的版本

    这里设置啦,Framew也设置了

    3.FrameWork项目文件的导入

    1.需要打包的工程文件的拖入方式,(第三方不含 静态库的直接当成项目文件拖入记得改类名如AFNetworking,否者他人使用你的Framework的时候再工程中同样导入AFNetworking会报重复文件错误)

    自己需要打包文件的拖入

    2.含有静态库的导入,我们可以把静态库当做依赖库,导入方式不勾选,但是需要手动拖入Xcode中Link FrameWork(和系统库一致)

    含静态库

    3.在Link FrameWork拖入你工程中需要的系统库

    4.设置Headers(第三方不含静态库的如AF改完类名也要拖入,含静态库的第三方不作考虑当做依赖库),其中Public是暴露的头文件,Project是工程文件需要导入完成

    5.在创建的工程文件自带.h中添加需要暴露的头文件

    6.添加资源文件.bundle

    4.制作包含模拟器和真机的Framework

    1.分别在真机模拟器中运行(改为relase模式)

    2.在目录中点击frameWork并进入找到模拟器和真机

    找到模拟器和真机

    3.合成

    (1).查看架构信息

    打开终端使用命令行 lipo -info 查看framework架构信息

    真机版本

    真机查看

    模拟器版本

    模拟器查看

    (2).合并真机模拟器版本

    因为以上获取的framework只能在对应的版本上运行(即真机只能在设备上运行模拟器版本只能在模拟器上面运行使用)所以需要合并为通用版本

    命令行语句:sudo lipo -create (此处请填写真机AppVest文件路径) (此处填写模拟器AppVest文件路径) -output  自定义合成文件存储路径(合成文件的名字AppVest)

    合成

    根据以上命令就在相应位置生成了新的AppVest文件,然后把这个新生成的文件拷贝到相应的framework中进行AppVest文件替换

    (3).查看替换后的framework支持全部真机模拟器架构

    合成查看

    此时都支持说明合成完毕可以使用。

    5.使用Framework

    1.导入我们的Framework和.bound,依赖的第三方静态库,系统库

    2.如果framework中使用了类别

    需要添加-all_load

    含有Category

    相关文章

      网友评论

          本文标题:制作frameWork,看我就够啦

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