我去找assertionFailure和swift_unexpectedError。下面是我的代码,其中显示了崩溃:
if let audioDevice = AVCaptureDevice.default(for: .audio) {
let audioIn = try! AVCaptureDeviceInput(device: audioDevice) /* Line of crash */
if captureSession.canAddInput(audioIn) {
captureSession.addInput(audioIn)
}
}
这只发生在我用Xcode12构建代码并更新应用程序之后。当我使用Xcode11构建代码时,在同一行代码中没有发生崩溃。
Crashed: com.capturePipeline.sessionQueue
0 libswiftCore.dylib 0x1ae506730 _assertionFailure(_:_:file:line:flags:) + 492
1 libswiftCore.dylib 0x1ae568d98 swift_unexpectedError + 436
2 MyApp 0x1047a70a4 CapturePipeline.setupVDO() + 4034 (CapturePipeline.swift:4034)
3 MyApp 0x10478c3f4 CapturePipeline.configureSession() + 1025 (CapturePipeline.swift:1025)
4 MyApp 0x1047bc5fc partial apply for closure #1 in CapturePipeline.setupSession() + 4338992636
5 MyApp 0x104721008 thunk for @escaping @callee_guaranteed () -> () + 4338356232 (<compiler-generated>:4338356232)
发布于 2020-09-23 19:22:53
使用do/catch捕获错误并获取有关它的更多信息:
do {
let audioIn = try AVCaptureDeviceInput(device: audioDevice)
} catch {
debugPrint(error)
}
https://stackoverflow.com/questions/64034837
复制