拍照时崩溃的控制台消息是:
[AVCapturePhotoOutput capturePhotoWithSettings:delegate:] No active and enabled video connection`
我已经按照 Apple 文档进行了设置。
- 创建一个 AVCapturePhotoOutput 对象。使用其属性来确定支持的捕获设置并启用某些功能(例如,是否捕获实时照片)。
fileprivate var photoOutput: AVCapturePhotoOutput!
创建和配置 AVCapturePhotoSettings 对象以选择特定捕获的功能和设置(例如,是否启用图像稳定或闪光灯)。
photoOutput = AVCapturePhotoOutput() if self.session.canAddOutput(photoOutput) { self.session.addOutput(photoOutput) }
通过将您的照片设置对象与实现 AVCapturePhotoCaptureDelegate 协议(protocol)的委托(delegate)对象一起传递给 capturePhoto(with:delegate:) 方法来捕获图像。照片捕获输出随后会调用您的代理,以通知您捕获过程中的重要事件。
queue.async { self.photoOutput.capturePhoto(with: AVCapturePhotoSettings(), delegate: self) }
但我仍然遇到崩溃错误。有谁知道为什么会这样? (我已经看到一些有答案的 SO 问题,但它们对我自己或其他人不起作用,或者没有答案。所以如果有人知道答案,我将非常感激。)这只发生在 iOS 模拟器中我,而不是当我在设备上测试时。
我可以发布任何额外需要的代码,我只是不想添加太多来开始。
最佳答案
模拟器目前没有模拟相机。如果这对您很重要,请在 https://bugreport.apple.com 提交错误报告。请求它。在许多情况下,功能优先级由开发人员错误报告和重复计数决定,因此即使它们是重复的,归档它们也很重要。
关于ios - 没有事件和启用的视频连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43196439/