无法为 tvOS 目标构建 Objective-C 模块 CoreMotion 错误

Could not build Objective-C module CoreMotion error for tvOS target

我在从我的 Sprite Kit iOS 游戏创建我的 tvOS 目标时遇到了一些错误。

第一个是:无法构建 Objective-C 模块 CoreMotion

第二个:雨伞header"CoreMotion.h"没找到

为了移植游戏,我从 iOS 目标中选择了我的大部分文件和资产,并检查了 TVOS 目标。

如果我注释掉所有 CoreMotion 代码,错误就会消失。我搜索了 Google 并在此处找到答案,但没有找到任何实质性内容。

有人知道如何解决这个问题吗?

问题是 tvOS 不支持 CoreMotion。

我必须使用 iOS 特定代码才能使其适用于所有相关代码。

像这样:

#if os(iOS)
   import CoreMotion
#endif

您还可以制作 tvOS 专用代码:

#if os(iOS)
  let gameGain: CGFloat = 2.5
#elseif os(tvOS) // tvOS
  let gameGain: CGFloat = 2.0
#endif