V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
junho
V2EX  ›  iDev

关于提供 Swift 的 Framework 给人用的若干问题

  •  1
     
  •   junho · 2019-10-24 10:50:10 +08:00 · 7662 次点击
    这是一个创建于 1848 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1.是不是目标 APP 的 Swift 版本和 SDK 的 Swift 编译版本不一致时就会出现 " incompatible swift version - framework was built with x" 这种问题? 即使是在 Swift5.0 ABI 稳定之后?

    2.了解到 XCFramework 是为了解决了 Module Stability 的问题,也就是解决上面那个问题吗?

    XCFrameworks are a new way to bundle up multiple variants of your framework in a way that it will work across Xcode Versions going forward.

    3.当 XCFramework 是基于 Dynamic Framework 创建出来,目标 APP 打包时也是把整个 XCFramework embed 进去的吗?

    3 条回复    2019-12-12 09:56:30 +08:00
    troyl
        1
    troyl  
       2019-10-24 23:45:25 +08:00
    App 的 Swift Version 也要设置到 Swift 5.x
    lnim
        2
    lnim  
       2019-12-11 19:00:57 +08:00
    1. 基本上都是 Xcode 版本问题, 因为 Xcode 版本不同 内置 Swift 版本也不同, 不同的 Xcode 版本所构建的 swift Framework 是无法运行在其他版本的,
    2. 是的~ 但是太麻烦了 需要你先构建好然后打包到 XC 框架里边
    3. 看起来是 Xcode 会按需去引用对应平台的 Framework
    junho
        3
    junho  
    OP
       2019-12-12 09:56:30 +08:00
    发现了一个比较详细讲解这个问题的 Demo
    https://github.com/bielikb/xcframeworks
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1869 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:34 · PVG 00:34 · LAX 08:34 · JFK 11:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.