更新到 Xcode 10.2.1 后出现了数百条警告。发布到应用商店还可以吗?

hundred of warnings after update to Xcode 10.2.1. is it still OK to be published to App store?

我很恐慌。我是编程和 iOS 开发方面的新手。明天我计划将我的应用程序发布到我公司的应用程序商店。但是今天早上我将我的 iPhone 更新为 iOS 12.2,并且我必须将我的 Xcode 更新为 10.2.1 以便 Xcode 可以 运行 我的应用程序在我的真实设备上。

但我收到了数百条如下图所示的警告。不幸的是,我还坚持将 iPhone 上的 iOS 降级为 12.1.4。所以看来我仍然必须在 iPhone 上使用 Xcode 10.2.1 和 iOS 12.2。我的 Xcode:

上有超过 250 个警告

尽管几乎所有的警告都是:

warning: public' modifier is redundant for instance method declared in a public extension

我可以 运行 我的应用没有问题。但我选择不修复警告并保留 'Conversion to Swift 5 is available''update to recommended settings'

因为它会使我的 firebase Pod 出错,我无法 运行 我的应用程序。所以我的问题是....

我仍然可以将我的应用程序发布到应用程序商店并且 运行 在用户的真实设备上没有问题吗?因为我选择不修复警告并保留 'Conversion to Swift 5 is available''update to recommended settings' ,但它仍然没有问题在我的模拟器上。我担心苹果会拒绝我的应用程序,因为我没有修复 'Conversion to Swift 5 is available''update to recommended settings' warning

关于更新 Xcode 以便您可以 运行 在您的设备上进行此操作的决定,事实证明这可能是不必要的。在很大程度上,无论您使用的 Xcode 版本如何,您通常都可以在 运行 更现代的 iOS 版本的设备上手动安装应用程序。您只是无法通过旧版本 Xcode 的调试器 运行 它。请参阅 ,其关于安装的基本概念今天仍然适用。

综上所述,最低 Xcode 版本 的选择是由 Apple 的 App Store 指南决定的。请参阅 this March 2019 guideline which says that apps must use iOS 12.1 SDK or later. And watch the Apple Developer News 提要,因为这些最低 SDK 要求会随着时间的推移而变化。

关于warnings,提交不会有问题。 Apple 没有你的源代码,也不知道你得到了什么编译时警告。问题是,这些警告实际上是在告诉您关于“某某 可能 是个问题”的重要且有用的信息,这就是解决所有这些警告的原因。如果没有看到您收到了哪些警告,我们无法评论哪些警告真正重要,哪些不重要。

但我建议你:

  • 确保您安装的 Xcode 版本支持 Apple Developer News 提要中列出的最低 SDK 版本;和
  • 在时间允许的情况下,真诚地努力解决尽可能多的警告。

在撰写本文时,the minimum SDK version is 12.1. But keep an eye on that feed,因为最低要求会定期更新,但通常会有一些提前警告。