如何在较旧的iOS设备上使用ARKit?

问题描述 投票:4回答:1

对于iOS 11的测试版,即使使用与旧设备兼容的3DOF,ARKit应用程序也会崩溃?

如果不支持ARKit,我该如何防止应用程序崩溃?

ios iphone xcode ios11 arkit
1个回答
9
投票

Supported Devices

从iOS 11开始,你can't在旧设备上使用ARKit:

重要

ARKit需要具有A9或更高版本处理器的iOS设备。

要使您的应用仅在支持ARKit的设备上可用,请使用应用的Info.plist的UIRequiredDeviceCapabilities部分中的arkit密钥。如果增强现实是应用程序的辅助功能,请使用isSupported属性确定当前设备是否支持您要使用的会话配置。

设备应具有A9或更高版本的处理器。您只能使用:

  • iPhone SE,
  • iPhone 6S和更新版(7,8,X),
  • iPad(2017)或更新,
  • iPad Pro(任何)。

Preventing Crashes

要防止应用程序崩溃,您可以使用isSupportedARConfiguration属性。别忘了检查当前的iOS版本。

import ARKit

func isARSupported() -> Bool {
    guard #available(iOS 11.0, *) else {
        return false
    }
    return ARConfiguration.isSupported
}

if isARSupported() {
    // ARKit is supported. Do what you need.
} else {
    // ARKit is not supported.
}

在尝试创建AR配置之前,请通过检查相应配置类的isSupported属性来验证用户的设备是否支持您计划使用的配置。如果此属性的值为false,则当前设备不支持所请求的配置。

© www.soinside.com 2019 - 2024. All rights reserved.