V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
junho
V2EX  ›  iOS

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

  •  
  •   junho · 2020-06-05 13:43:36 +08:00 · 1839 次点击
    这是一个创建于 1633 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近需要把一些 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 条回复    2020-09-24 19:18:34 +08:00
    junho
        1
    junho  
    OP
       2020-06-05 14:01:00 +08:00
    经过 Pod 以后 Demo 工程都添加了所有第三方的 Module Header Path 了,为啥 SDK 中的 swiftInterface 还会报找不到第三方的 module header....
    shenfu1991
        2
    shenfu1991  
       2020-06-06 14:59:05 +08:00 via iPhone
    是在 oc 工程中使用吗?把第三方库也放进去
    junho
        3
    junho  
    OP
       2020-09-24 19:18:34 +08:00
    emm
    这两天升级了 xcode 又要重新打包二进制。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2730 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 11:13 · PVG 19:13 · LAX 03:13 · JFK 06:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.