ios - 如何检查 iOS 11 安装的设备是否支持 ARKit?

标签 ios swift arkit

我目前正在开发基于 ARKit 的应用程序。我需要检查 ARKit 支持的设备。

我有两个 UIViewController

1)ARKit View Controller 2) 非ARKit View Controller 。

我必须根据设备支持设置一个 View Controller 之一。

目前我正在检查以下代码。但这不适用于某些不支持 ARKit 但装有 iOS 11 的设备。

if #available(iOS 11.0, *) {
            arProfileClosetController = THARClosetViewController(nibName: THARClosetViewController.className, bundle: nil)
        } else {
            arProfileClosetController = THNonARClosetViewController(nibName: THNonARClosetViewController.className, bundle: nil)
}

最佳答案

您可以在运行时检查此属性:ARConfiguration.isSupported

if (ARConfiguration.isSupported) {
    arProfileClosetController = THARClosetViewController(nibName: THARClosetViewController.className, bundle: nil)
} else {
    arProfileClosetController = THNonARClosetViewController(nibName: THNonARClosetViewController.className, bundle: nil)
}

关于ios - 如何检查 iOS 11 安装的设备是否支持 ARKit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46129520/

相关文章:

ios - 使用 Swift 将对象添加到数组而不重复

ios - 在没有 contentSize.height 的情况下获取 UITextView 中的行数

swift - tvos如何防止AVPlayerViewController获得焦点

machine-learning - 对象检测 ARKit 与 CoreML

swift - 显示来自网络的现实文件时出错

iphone - 如何使用 phonegap 成为整个原生 ios 应用程序的一部分

ios - 使用Multipeer Connectivity(Swift 2)在目标iPhone中从发送者部分接收了音频文件

ios - 在 macOS/iPhone 上的 Swift 5 中压缩的数据无法通过其他任何东西解压缩

swift - 如何删除 tvOS UITableView 突出显示的 alpha 组件?

ios - SceneKit UIImage Material 为黑色