美文网首页
iOS制作Framework的流程

iOS制作Framework的流程

作者: xiaofu666 | 来源:发表于2020-04-14 17:01 被阅读0次

    作为SDK开发与维护的工程师,framework的制作流程必须要熟悉!下面我详细介绍一下制作framework的流程.

    1. 首先创建工程,选择iOS->Cocoa Touch Framework,如下图所示:


      image.png
      image.png
    2. 进入项目后,删除系统自带的文件,导入需要制作SDK得源文件,如下图所示:


      image.png
      image.png
    3. 找到源文件中所引入的第三方库,删掉重新导入,在导入时选择不包括在SDK中,避免与使用方在第三方库上面的导入冲突,如下图所示:


      image.png
      image.png
    4. 接下来对我们的这个.framework静态库进行一些简单的设置,如下图所示:

    a、将Build Settings中Link下面的Dead Code Stripping设置为NO,网上对此项的解释,大致意思是如果开启此项就会对代码中的”dead”、”unreachable”的代码过滤,不过这个开关是否关闭,似乎没有多大影响,不过为了完整还原framework中的代码,将此项关闭也未曾不可。


    image.png

    b、将Build Settings中Link下面的Link With Standard Libraries关闭,我想可能是为了避免重复链接


    image.png

    c、将Build Settings中Link下面的Mach-O Type设为Static Library,framework可以是动态库也可以是静态库,对于系统的framework是动态库,而用户制作的framework只能是静态库。


    image.png

    d、源代码中如果包含分类,继承等是,最好在Build Settings中Other Linker Flags 增加参数-ObjC,同时支持-all_load


    image.png

    e、提取需要暴露在外的.h文件,如图所示:


    image.png

    可以直接将project中的文件拖入到public,也可以在那个.h文件上选择,如图所示:


    image.png

    f、设置SDK得版本号和最低支持的版本,如图所示:


    image.png

    g、设置SDK的打包版本为release版本


    image.png
    image.png
    1. 分别在模拟器和真机中运行程序,然后在本地找到打包完的程序,两者有分为真机版本和模拟器版本framework(iphoneos后缀代表真机版本,iphonesimulator后缀代表模拟器),如下图:


      image.png
      image.png
    2. 打开终端,进行真机版本和模拟器版本framework合并

    lipo -create 模拟器包地址 真机包地址 -output 真机包地址
    

    如下图所示:


    image.png

    使用命令行 lipo -info 查看framework架构信息

    lipo -info 合并后的真机包地址
    
    image.png

    此时framework已经制作完成,可以导入项目使用了哦!

    相关文章

      网友评论

          本文标题:iOS制作Framework的流程

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