【发布时间】:2014-07-29 16:50:49
【问题描述】:
我尝试的第一件事是创建一个static library,但后来我发现它还不支持。 Apple Xcode Beta 4 发行说明:
Xcode 不支持构建包含 Swift 的静态库 代码。 (17181019)
我希望 Apple 能够在下一个 Beta 版本或 GA 版本中添加此功能,但我在 their blog 上阅读了以下内容:
当您的应用运行时 兼容性得到保证,Swift 语言本身将继续 进化,二进制接口也会改变。为了安全起见,所有 您的应用程序的组件应该使用相同版本的 Xcode 构建 和 Swift 编译器,以确保它们一起工作。
这意味着需要谨慎管理框架。例如, 如果您的项目使用框架与嵌入式共享代码 扩展,您将需要构建框架、应用程序和扩展 一起。 依赖二进制框架会很危险 使用 Swift——尤其是来自第三方的。随着 Swift 的变化,那些 框架将与您的应用程序的其余部分不兼容。当。。。的时候 二进制接口在一两年内稳定,Swift 运行时将 成为主机操作系统的一部分,此限制将不再存在。
对于为其他开发人员编写组件以供其他开发人员使用和包含在他们的应用程序中的人来说,这个消息确实令人震惊。这是否意味着我必须分发源代码或等待两年?有没有其他方法可以在不暴露代码的情况下分发库(公司政策)?
更新:
目前是否可以选择 Swift 代码混淆?
【问题讨论】:
-
恐怕在这种情况下你只需要使用 Objective-C 代码。此外,TIL Swift 有一个博客。谢谢。
-
听起来你需要继续用 Objective C 编写你的库,直到 Apple 将 Swift 运行时整合到操作系统中。
-
我认为对于 iOS 开发人员来说,学会快速使用 Swift 更为重要,但使用 Swift 快速交付代码并不那么重要。
-
“另外,TIL Swift 有一个博客。”是的。接下来你知道它会在 Instagram 上发布它的饭菜。