美文网首页
swift ios 静态库的实现

swift ios 静态库的实现

作者: 荔枝lizhi_iOS程序猿 | 来源:发表于2022-02-25 14:11 被阅读0次

    1.swift不支持.a的静态库,因此只能制作.framework的静态库

     同oc类似,framework需要设置 mach-o 为 static library
    

    2.静态库的使用

     同oc一样,加入静态库,需要设置好静态库相关的path,然后在需要使用的地方 import xx.framework,然后就可以使用了
    

    3.纯swift静态库的制作

    将需要开放的接口和类设置成public
    
    header不需要设置,xcode会自动生成头文件
    
    同oc一样,将写好的代码编译成不同的架构,并合成一个包,同时需要合并.swiftmodule里面的文件
    

    4.纯swift静态库中包含静态库

    目标静态库A,引入静态库B
    
    其实A中使用B的方式和普通工程使用静态库的方式一致
    

    5.swift和oc混合的静态库的制作

    制作方法同3,4类似,但是swift使用的oc类需要导入到静态库自动生成的.h中,且其.h文件需要放入header中。
    oc中使用swift时需要在oc中xcode自动生成的xxx-swift.h,同时swift中能被oc使用的类或者方法,需要前置声明@objc
    

    在使用的时候需要注意一个问题

    ❌错误
    dylib: Library not loaded: @rpath xx.framework/xx
    
    Reason: image not found
    
    
    解决办法
    
    此处需要导入 General -> Embedded Binnaries xx.framework
    

    参考链接 https://www.daimajiaoliu.com/daima/4ed25e2a6900401

    相关文章

      网友评论

          本文标题:swift ios 静态库的实现

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