我无法使用相机拍摄iOS应用中的闪光灯。
这是我想要使闪光灯工作时调用的功能:
func litFlash() {
if !captureDevice.hasFlash || !captureDevice.isFlashModeSupported(.On) {return}
// We now have: captureDevice.hasFlash && captureDevice.isFlashModeSupported(.On)
do {try captureDevice.lockForConfiguration()
} catch let error as NSError {
print("captureDevice.lockForConfiguration FAILED")
print(error.code)
}
captureDevice.torchMode = .On
//captureDevice.flashMode = .On // Strangely enough, this produces a crash.
captureDevice.unlockForConfiguration()
//captureSession.commitConfiguration()
}
这是我调用函数的地方:
if fireFlashFlag {litFlash()}
if let videoConnection = stillImageOutput.connectionWithMediaType(AVMediaTypeVideo) {
stillImageOutput.captureStillImageAsynchronouslyFromConnection(videoConnection) {
(imageDataSampleBuffer, error) -> Void in
………
它可以工作大约20%,其余的我得到一个闪光但它与拍照不同步。 闪光灯太早出现了一小段时间。
希望有人能指出我正确的方向。 提前感谢任何相关的信息。