迁移到Swift 3时我可以使用旧框架吗?

时间:2016-08-28 19:22:13

标签: ios swift xcode xcode8 xcode8-beta6

我正在将我的项目迁移到Swift3,因为我知道在iOS 10下有一个需要修复的错误。

所以我在我的一台设备上安装了iOS 10。 现在我无法在设备上运行我的应用,收到“Could not find developer disk image”错误。

所以我下载了最新的Xcode8-beta。 现在我的代码无法编译 - 我首先必须将其转换为最新的语法。 因此,在修复所有非自动转换的语法问题时,我正在为我正在导入的框架收到错误: “模块文件是由旧版本的编译器创建的” 根据我的理解,这意味着需要使用当前版本的XCode重新编译此框架。

这意味着我必须指责我使用的所有框架都是最新的,或者以其他方式解决这些问题?

是否完全不可能使用'弃用'框架?

这个Apple是否超级严格,以尽可能摆脱任何Swift1 / 2代码?

2 个答案:

答案 0 :(得分:2)

  

这意味着我必须指责我使用的所有框架都是最新的,或者以其他方式解决这些问题?

     

根本不可能使用'弃用'框架?

     

这个Apple是否超级严格,以尽可能摆脱任何Swift1 / 2代码?

烨。 Swift 3就是它。

对于那些必须将他们的C代码转换为swift 2的人来说,我感觉很糟糕,现在swift 3即将来临xD

希望他们能够在最终发布版本中更轻松地完成转换,不久之后所有主要框架都将更新(供您重新编译)。

答案 1 :(得分:1)

您需要重新编译框架。即使是像Carthage(它重新编译每个更新命令)这样的依赖管理器管理的框架仍然存在XCode 8 Betas / Swift 3的问题:https://github.com/Carthage/Carthage/issues/1440