iOS14调试器的自动旋转错误


编辑:我找到了罪魁祸首。代码中的一行冻结了调试器中iOS 14设备的自动旋转。XCode项目是";死的";除非您删除它并创建一个新副本,否则它将永远存在。
class ViewController: UIViewController {
public static let metalDevice:MTLDevice? = MTLCreateSystemDefaultDevice() //Freezes iOS 14 device
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}

我在iOS 14(测试版3(中看到了一个不寻常的自转错误。我有一个XCode项目与一些AVFoundation(AVCaptureSession(&用于设置相机和渲染相机帧的金属代码。代码是巨大的,但这是关于bug的奇怪之处。

  • 使用XCode 12构建项目,并在iOS 14设备上运行。视图控制器在连接到调试器时不会自动旋转。当应用程序在没有调试器的情况下打开时,会发生自动旋转,

  • 一旦自动旋转在调试器中被阻止,XCode项目就会永远被阻止。意思是,如果我将初始视图控制器更改为某个虚拟视图控制器,它也无法自动旋转!!!唯一的方法是制作一个新的XCode项目来重现这个问题。

  • 这在iOS 13设备上不会发生。

由于有很多代码,因此很难制作可再现的测试用例。我试着修剪了很多代码,但它是不可复制的。即使要找到罪魁祸首代码,我每次都需要制作一个新的XCode项目,因为这个项目一旦死了就永远死了!

有人知道类似的问题吗?任何投入都将不胜感激。

这无疑是iOS 14中的一个引人注目的、非常禁用的错误。禁用GPU帧捕获或在Scheme设置中将GPU帧捕获设置为"Metal"似乎可以修复它。

相关内容

  • 没有找到相关文章

最新更新