-
本文主要介绍ARKit开发过程中一些常见问题
- 1.ARKit框架无法导入问题
- 2.ARKit运行黑屏或者白屏问题:Unable to run the session, configuration is not supported on this device: <ARWorldTrackingSessionConfiguration
- 3.ARKit添加虚拟物体无法显示问题:ARSession不支持打断点
1.1-ARKit框架无法导入问题
***有时候我们可能无法在Xcode9中导入
ARKit
框架(概率性随机事件,可能是beta版本Xcode的bug),这主要是由于Xcode没有添加对应的库导致-
1.ARKit框架并不能被Xcode自动识别,需要我们自己在工程target中添加
- 最好把
SceneKit
框架也加上
- 最好把
- 2.如果上面的步骤还不能导入
ARKit
框架,那么一定不要忘记检查你的导入顺序。我们应该先导入SceneKit
再导入ARKit
,因为ARKit
框架内部引用了SceneKit
框架中的对象- 这很有可能是Xcode自身的bug
1.2-ARKit运行黑屏或者白屏问题
-
苹果在
ARKit
官方文档中,说了一段这样的话:- 在文档中,苹果明确指出,目前ARKit不支持A9芯片以下的设备,一般2015年秋季发布会iPhone6s之后都是A9芯片,在这之前的设备都不支持。无论是iPhone还是iPad
- 一般情况下,除了iOS设备之外,模拟器也不支持运行ARKit,如果你的设备不支持ARKit,那么Xcode就会报错:Unable to run the session, configuration is not supported on this device: <ARWorldTrackingSessionConfiguration
1.3-ARKit添加虚拟物体无法显示问题
-
一般添加虚拟物体主要原因有两个
- 1.物体位置错误
- 2.Xcode打了断点
-
第一种情况自行解决,这里主要说说第二种情况,苹果在官方文档中明确指出:不要在运行ARKit中打断点,否会将会导致一些不可预见的错误
- ARSession会不停的获取相机的位置,一旦打了断点将会导致线程卡死,最终无法计算相机准确位置,就会导致虚拟物体添加不了的问题