美文网首页iOS热更新
iOS制作FrameWork(Xcode9)

iOS制作FrameWork(Xcode9)

作者: 我太难了_9527 | 来源:发表于2018-04-10 18:01 被阅读151次

    作为开发者在开发者肯定会去用到第三方的一个东西, 比如支付宝 微信,或者地图这方面的, 但是我们去集成的时候往往开发者平台会给你一个. a 文件 或者. FrameWork 文件,那来调用里面的方法, 但是我们当我们点击去看源码的时候是看不到里面是怎么实现的.里面就只有. h 文件, 毕竟. m 里面的东西是属于公司核心代码, 不会给你看到的. 那么我们就来看看制作 FrameWork 的制作流程吧.

    第一步 创建一个项目

    创建项目.png

    第二步 创建一个继承与 NSObject 的类,名为 StaticText

    创建类.png

    第三步 在StaticText.h写你为开发者提供的方法 并在StaticText.m 实现

    #import <Foundation/Foundation.h>
    
    @interface StaticText : NSObject
    
    /**
     暴露给开发者的方法
     */
    -(void)goHome;
    
    @end
    
    #import "StaticText.h"
    
    @implementation StaticText
    
    /**
     实现
     */
    -(void)goHome{
        NSLog(@"iOS从入门到放弃");
    }
    
    @end
    

    第四步 (1)在TARGETS下选中工程,在Build Settings下更改几个参数。

    修改参数.png B8413C4D-A74C-4788-B543-326EAF1D400D.png

    (2) 在 Architectures 中添加 armv7s 并把 Build Active Architecture Only 设为 No

    修改.png

    第五步 设置Headers

    将你要公开的头文件移动到Public下,要隐藏的放在Private或者Project下,


    设置 Headers.png

    第六步 在 StaticFrameWork.h把你所需要的头文件导入

    导入头文件.png

    第七步 打包FrameWork

    (1) 选择某个模拟器 编译程序.
    (2) 选择真机 编译程序.
    (3)在 Finder中找到 FrameWork
    选中 frame.png
    上图中 选中 FrameWork 在 Show In Finder 会看到下图
    两种 framework.png

    第八步 我们需要使用终端把这两个 FrameWork 合并成一个

     在中段输入  lipo -create iphoneos下的StaticFrameWork路径 iphonesimulator下的StaticFrameWork路径 -output 新的路径
    
    lipo -create /Users/wangyu/Library/Developer/Xcode/DerivedData/StaticFrameWork-fcpijsovwugnjcdhtkfygpwfhxad/Build/Products/Debug-iphoneos/StaticFrameWork.framework/StaticFrameWork /Users/wangyu/Library/Developer/Xcode/DerivedData/StaticFrameWork-fcpijsovwugnjcdhtkfygpwfhxad/Build/Products/Debug-iphonesimulator/StaticFrameWork.framework/StaticFrameWork -output /Users/wangyu/Desktop/text1/StaticFrameWork
    

    这样就完成了模拟器和真机版本的合并,新路径下的StaticFrameWork就是你合并后的文件

    然后用输出在桌面上的StaticFrameWork替换掉前面Debug-iphoneos中FrameWork中的StaticFrameWork
    将这做好的FrameWork直接拖入要使用的工程中


    拖到项目中去.png

    第九步 导入 FrameWork 文件

    #import <StaticFrameWork/StaticFrameWork.h>
    
    
    StaticText *text = [[StaticText alloc]init];
        [text goHome];
    

    结果


    结果.png

    OK 完成.在后面还写了有关静态库[静态库.a文件制作方法] (https://www.jianshu.com/p/0e84e299020c)

    http://www.cocoachina.com/ios/20161109/18031.html

    相关文章

      网友评论

        本文标题:iOS制作FrameWork(Xcode9)

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