ARKit演示在iPhone 6 / iPhone 6 Plus上崩溃

我正在使用ARKitfunction ,最近主要的iOS版本,但我得到一个错误failed assertion崩溃

MTLRenderPassDescriptor:深度附件的MTLStoreActionMultisampleResolve存储操作不受设备支持

我已经有iOS11testing版,安装在我的iPhone设备上。

您可以使用ARConfiguration的“isSupported”属性在运行时以编程方式检查ARKit支持。

ARConfiguration.isSupported

 if (ARConfiguration.isSupported) { // ARKit is supported. You can work with ARKit } else { // ARKit is not supported. You cannot work with ARKit } 

以下iOS设备(安装iOS 11)支持ARKit:

  • iPhone X
  • iPhone 8和8 Plus
  • iPhone 6S和6S Plus
  • iPhone 7和7 Plus
  • iPhone SE
  • iPad Pro(9.7,10.5或12.9)
  • iPad(2017)

这里是苹果的ARKit和设备支持文件

ARKit需要带有A9或更高版本处理器的iOS设备。 要使您的应用仅在支持ARKit的设备上可用,请在应用的Info.plist的UIRequiredDeviceCapabilities部分使用arkit密钥。 如果增强现实是您应用程序的辅助function,请使用isSupported属性来确定当前设备是否支持您要使用的会话configuration。

以下是一些与ARKit支持和iOS设备configuration相关的参考链接:

ARKit在Apple A9和A10 & A11仿生芯片处理器上运行。
iPhone型号 – (芯片)
iPad型号 – (芯片)

因为所有的答案都是A9芯片的hardware constraint 。 无论如何,在Info.plist上添加ARKitUIRequiredDeviceCapabilities是一个很好的做法,它会给你一个更好的反馈,运行基于ARKit的主要function的应用程序。

为了能够运行ARKit,你的设备应该能够支持它。 不仅使用最新的iOS将有所帮助。 正如苹果在2016年的主题演讲中提到的那样,他们支持A9芯片,而上面的意思是iPhone 6s及以上版本将能够运行和testingARKit。