ARKit:如何正确检查支持的设备?

App*_*Dev 4 iphone ios arkit

我正在使用,ARKit但它不是我应用程序中的核心功能,因此我没有在中设置arkit密钥UIRequiredDeviceCapabilities。我正在设置指令@available(iOS 11.0, *),但是ARKit需要A9或更高版本的处理器(即iPhone 6S或更高版本...)

最好的检查方法是什么?我找到了一种解决方法,其中涉及在多个位置检查设备模型,但看起来有点复杂。并且会在商店的评论中被拒绝吗?

Tam*_*gel 8

您应该为此检查类isSupported提供的布尔值ARConfiguration

从Apple开发人员文档中:

isSupported

一个布尔值,指示当前设备是否支持此会话配置类。

所有ARKit配置都需要配备A9或更高版本处理器的iOS设备。如果您的应用另外支持其他设备并提供增强现实作为辅助功能,请使用此属性确定是否向用户提供基于AR的功能。

  • 您甚至不需要实例 - `isSupported` 是一个类属性,并且无论您是否可以使用实例执行任何有用的操作,该类始终存在于 iOS 11 中。在显示 AR 视图之前,只需“if ARWorldTrackingConfiguration.isSupported { ... }”即可控制功能。 (2认同)

小智 6

只需检查 ARConfiguration 可用性即可。

if (ARConfiguration.isSupported) {

      // Great! let have experience of ARKIT
} else {
     // Sorry! you don't have ARKIT support in your device
}
Run Code Online (Sandbox Code Playgroud)