xcode 在iOS 13上,当ARKit调用nextDrawable时会冻结一秒,这是什么原因?

brc7rcf0  于 2023-05-19  发布在  iOS
关注(0)|答案(1)|浏览(99)

我正在尝试调试iOS 13上的ARKit中的一个问题,当SCNRenderer调用[CAMetalLayer nextDrawable]时(the documentation确实说可以冻结该持续时间)。重现这个问题并不难,但它只会在应用程序运行的一半时间内随机发生。
当问题发生时,有两个渲染队列可见,一个标记为ARSCNView,另一个标记为SCNView,如以下屏幕截图所示:

我认为这两个队列总是存在的,只是我只有在中断nextDrawable调用时才能看到它们。
只有在iOS 13.1沿着时才看到这个问题,但可能我只是在iOS 13上错过了它。发布这个问题希望其他人正在做同样的事情。。

tyky79it

tyky79it1#

这是一个臭名昭著的bug

当我们在iPhone模拟器上以Xcode的调试模式运行基于金属的AR应用时,经常会发生这种情况。

解决方案

在Xcode的Debug模式下构建应用程序后,只需将设备与计算机断开连接,退出应用程序并启动与计算机断开连接的应用程序。AR应用程序将启动,而不会冻结。

相关问题