我目前正在构建一个带有watchOS应用扩展程序的iOS应用。我在两个应用程序之间共享某些类,并且它们在两个平台上大致相同,但具有某些变体。我想知道这是如何最好地实施。现在我使用以下内容:
#if os(watchOS)
private var watchOSOnlyProperty: Any?
#endif
或
#if os(iOS)
func iOSOnlyMethod() {
...
}
#endif
虽然这有效,但由于XCode似乎对此非常困惑,因此它会产生一些问题。使用这种语法时,缩进,自动完成和方法列表都有点不对。
这样做的正确方法是什么?如何添加iOS / watchOS特定属性&在Swift中共享类的方法?