在我ARKit应用程序我提出一个模态窗口。当我关闭模式,并回到ARSCNView然后我发现,本次会议暂停由于此代码:ARKit会议暂停,当前未恢复
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// Pause the view's session
sceneView.session.pause()
}
当我关闭模式,并返回到ARKit摄像机视图画面这段代码被炒鱿鱼:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Create a session configuration
let configuration = ARWorldTrackingSessionConfiguration()
// Run the view's session
sceneView.session.run(configuration)
}
但是这段代码永远不会恢复会话。屏幕在读取的最后一张图像上完全冻结。有任何想法吗?
我更新viewDidAppear代码为以下。它仍然卡在相机屏幕上,冻结图像。
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// Create a session configuration
let configuration = ARWorldTrackingSessionConfiguration()
sceneView.session.delegate = self
if self.isPaused {
sceneView.session.run(sceneView.session.configuration!)
} else {
// Run the view's session
sceneView.session.run(configuration)
}
}
感谢@rickster!现在有道理。我会确保用户不会离开AR体验并使用popover演示文稿。 –
即使使用popover演示文稿,我仍然看到会话冻结。可能的错误? https://forums.developer.apple.com/thread/81943 –