【问题标题】:My project's iOS deployment target is set to iOS 9.0 and i want to integrate Reality Kit in my app for iOS 13.0 and up我的项目的 iOS 部署目标设置为 iOS 9.0,我想将 Reality Kit 集成到我的 iOS 13.0 及更高版本的应用程序中
【发布时间】:2020-02-06 09:04:15
【问题描述】:

RealityKit 仅适用于 iOS 13.0 及更高版本,当我尝试将其集成到我的项目并在 iOS 12.0 上运行时,或下面,应用程序崩溃并出现abort_with_payload 错误。

我仍然希望我的应用能够在没有 AR 功能的 iOS 9.0 - iOS 12.0 上运行。有什么办法可以做到吗?

【问题讨论】:

    标签: ios xcode crash augmented-reality realitykit


    【解决方案1】:

    发生这种情况是因为框架RealityKit 总是导入,即使设备没有该框架。解决方案是根据您使用的设备将其设为可选。

    1. 转到您项目的Build Settings
    2. 转到Linking -> Other linker Flags
    3. 双击Other linker Flags 值以添加新值。
    4. 按添加按钮然后输入-weak_framework RealityKit

    应该这样做。输入然后运行您的应用程序。

    希望这会有所帮助。快乐编码。 :D

    【讨论】:

      【解决方案2】:

      查看canImport(module) 指令

      #if canImport(RealityKit)
          import RealityKit
      #endif
      
      @available(iOS 13.0, *)
      class MyClassWhichUsesRealityKit {
      
        func do() {
            let v = ARView(frame: .zero)
        }
      }
      

      来源:https://github.com/apple/swift-evolution/blob/master/proposals/0075-import-test.md

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-01
        • 2021-10-17
        • 1970-01-01
        • 2019-04-20
        • 2011-07-23
        相关资源
        最近更新 更多