Swift 2.3 应用程序会在 App Store 上接受多长时间?

Posted

技术标签:

【中文标题】Swift 2.3 应用程序会在 App Store 上接受多长时间?【英文标题】:How Long Will Swift 2.3 Apps Be Accepted on the App Store? 【发布时间】:2016-11-20 23:07:32 【问题描述】:

我目前正在构建一个 Swift 2.3 应用程序,我计划在 2017 年第二季度在 App Store 上发布。

我知道 Swift 3 现已推出,从技术上讲,项目切换到 Swift 3 会更好。

但是我在我的应用程序中使用了一些非常重要的库,它们至少要几个月才能更新到 Swift 3。

所以,正如你所了解的,我现在在每个营地都有立足之地。

我该怎么办?更重要的是,什么时候才能在 App Store 上接受 Swift 2.3 应用程序

Swift 3 与 Swift 2.3 的复古兼容性会很快实现吗?

谢谢,

【问题讨论】:

除了 picciano 的回答,请考虑这个... (1) 如果这些第三方库是用 Swift 编写的,那么它们的截止日期也将与您相同。 (2) 人们可以对 Swift 4 的发布日期比 Swift 2.3 的退役日期更有信心。也就是说,我同意 picciano - 如果可能的话,使用 Swift 3.x。 我们可以更新到 Swift 3,但时间成本会很高(部分原因是我们需要更新/替换我们使用的一些更新缓慢的库)。我们最好在一年内 Swift 4 推出稳定的 ABI 时进行更新。再加上一年后,我们将知道该应用程序是否成功并且值得更新。我想这一切都归结为“Swift 2.3 应用程序会在 1 年内在 App Store 上被接受吗?在 2 年内?”这个问题。这是一种套利 好吧,既然“套利”的定义不包括“意见”,我可能应该退出。但。你问一些没有人知道的事情。我的意思是,最坏的情况——App Store 在 1 或 2 年内不存在。最好的情况?苹果——顺便说一句,控制着 100% 的 App Store,打开一切,也允许设备被破坏。对不起,如果我听起来轻率,但你是在征求意见(这真的不是这个网站)和预言(Apple 在 Xcode 8.2 中非常清楚地谈到了这一点)。 任何人都知道的事实本身已经是一个答案。谢谢! 【参考方案1】:

Xcode 8.2(目前处于测试阶段)将是支持 Swift 2.3 的最后一个 Xcode 版本。我会鼓励你尽快过渡到 Swift 3。

应用程序二进制接口 (ABI) 的稳定性很可能会在 2017 年下半年发布的 Swift 4 中实现。这意味着从那时起,二进制文件将是兼容的。 Swift 2.3 二进制文件永远不会与 Swift 3 兼容,Swift 3 二进制文件也不太可能与 Swift 4 兼容。但是,Swift 4 库应该与更高版本兼容。

【讨论】:

非常感谢您的回答!在这种情况下,等待 Swift 4 发布不是更好吗?我想更新到 Swift 3(核心项目 + 库)需要我们几天的工作。这是一种套利行为,但这一切都取决于 Swift 2.3 应用程序何时才能在 App Store 上被接受。 use legacy version 设置为no。您仍然可以在 swift 3.0 中使用 swift 2.3 库 在 Swift 3 中似乎不能使用一些 Swift 2.3 库 "test.swift:17:8: 使用 Swift 3.0 编译的模块无法在 Swift 2.3 中导入" 我再说一遍......Swift 2.3 库与 Swift 3.0 项目不兼容。它行不通。您需要转换整个代码库。【参考方案2】:

现在 Apple 不接受您在 App Store 上的项目。

将您的 Xcode 版本更新到 Mac App Store 上提供的最新版本 Xcode 9,其中包括 ios 11 SDK,并构建您的应用程序。从 2018 年 7 月开始,提交到 App Store 的所有新 iOS 应用程序和更新都必须使用 iOS 11 SDK 构建。适用于 iPhone 的所有新 iOS 应用和更新,包括通用应用,都必须支持 iPhone X 的 Super Retina 显示屏。

【讨论】:

以上是关于Swift 2.3 应用程序会在 App Store 上接受多长时间?的主要内容,如果未能解决你的问题,请参考以下文章

从 swift 2.3 问题迁移到 swift 3.1

IOS APP 开发 swift 中 UIWebView 与 javascript 的交互

从 swift 3 转换为 swift 2.3 或从 iPhone 上的应用程序获取源代码

无法在 Swift 2.3 中编译 Siri 扩展

Firebase queryEqualToValue 在 Swift 2.3 中获取密钥

iOS Swift 2.3:应用程序恢复处理程序的正确语法?