junho
V2EX  ›  iOS

关于 Swift 的静态 Framework 的兼容性问题

  •  
  •   junho · Jun 5, 2020 · 2311 views
    This topic created in 2245 days ago, the information mentioned may be changed or developed.

    最近需要把一些 Swift 代码打包成静态 Framework 提供给别人用,然后这时候涉及到了 Swift 编译版本的问题,就是使用这个 Framework 的人的 swift 版本必须和我的版本一致。

    然后查了下资料说下 Swift5.0 以后比较稳定,在编译 Framework 的时候选择 BUILD_LIBRARY_FOR_DISTRIBUTION 为 YES 就好。我尝试把这个参数设为 YES,结果就是编译的 Framework 里多了 xxx.swiftInterferface 的文件夹。

    由于静态 Framework SDK 是依赖了一些开源的第三方,当我建立一个 Demo 工程并把编译好的 Framework 放进去并 pod 相关的第三方,当编译 demo 工程时会提示 SDK 中的 xxx.swiftInterferface 中"No Such Module 'XXX"。。。

    所以想请教两个问题: 1.上面提到的"No Such Module"问题如何解决? 2.如何使得编译出来的静态 Framework 可以在不同版本的 Xcode 上跑( Swift5.0 以后的)

    3 replies    2020-09-24 19:18:34 +08:00
    junho
        1
    junho  
    OP
       Jun 5, 2020
    经过 Pod 以后 Demo 工程都添加了所有第三方的 Module Header Path 了,为啥 SDK 中的 swiftInterface 还会报找不到第三方的 module header....
    shenfu1991
        2
    shenfu1991  
       Jun 6, 2020 via iPhone
    是在 oc 工程中使用吗?把第三方库也放进去
    junho
        3
    junho  
    OP
       Sep 24, 2020
    emm
    这两天升级了 xcode 又要重新打包二进制。。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5376 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 07:53 · PVG 15:53 · LAX 00:53 · JFK 03:53
    ♥ Do have faith in what you're doing.