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

2019-10-24 10:50:10 +08:00
 junho

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 进去的吗?

7568 次点击
所在节点    iDev
3 条回复
troyl
2019-10-24 23:45:25 +08:00
App 的 Swift Version 也要设置到 Swift 5.x
lnim
2019-12-11 19:00:57 +08:00
1. 基本上都是 Xcode 版本问题, 因为 Xcode 版本不同 内置 Swift 版本也不同, 不同的 Xcode 版本所构建的 swift Framework 是无法运行在其他版本的,
2. 是的~ 但是太麻烦了 需要你先构建好然后打包到 XC 框架里边
3. 看起来是 Xcode 会按需去引用对应平台的 Framework
junho
2019-12-12 09:56:30 +08:00
发现了一个比较详细讲解这个问题的 Demo
https://github.com/bielikb/xcframeworks

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/612412

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX