更新我的XCode后,出现了严重错误

时间:2020-07-11 22:39:42

标签: ios swift xcode stride

因此,我最近将MacOS更新为Catalina,并安装了XCode 11.5。在此之前,我拥有High Sierra和High Sierra支持的XCode的最高版本(不记得版本号)。

因此,我在该组合上构建的应用程序在XCode中可以正常工作,但是现在更新打开后,我无法运行该应用程序,因为出现了Strideable错误。我在其中一个控制器中有以下代码,在此之前可以正常工作:

extension Date : Strideable {
    public func advanced(by n: Int) -> Date {
        return Calendar.current.date(byAdding: .day, value: n, to: self) ?? self
    }
    
    public func distance(to other: Date) -> Int {
        return Calendar.current.dateComponents([.day], from: other, to: self).day ?? 0
    }
}

我基本上将此用于我在应用程序内部实现的日历。

因此,现在,当我尝试运行该应用程序时,出现以下两个错误:

协议“ Strideable”要求“ advanced(by :)”在iOS 11.0.0和更高版本中可用

协议“ Strideable”要求“ distance(to :)”在iOS 11.0.0及更高版本中可用

如您所见,我已经实现了这两个功能。

在我的应用程序的“部署信息”中,我对iOS 11.0的要求是最低要求。

此外,该应用程序的当前版本已发布在App Store上并且可以正常运行。这里有什么问题?

1 个答案:

答案 0 :(得分:0)

好吧,我不确定为什么,但是显然在某个时候,Strideable有了更新,所以我唯一要做的就是删除我的Strideable扩展名。

一旦我这样做,该应用程序将正常运行。