我正在使用代码(在另一个项目中的XCode 4之前使用的代码),现在如果打开手电筒,它会在闪烁之前闪烁一次。
像这样:-*-****
其中-
= off和*
= on
我正在使用的代码:
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (toggleSwitch.on)
{
NSLog( @"Light ON");
AVCaptureSession *session = [[AVCaptureSession alloc] init];
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:nil];
[session addInput:input];
AVCaptureVideoDataOutput *output = [[AVCaptureVideoDataOutput alloc] init];
[session addOutput:output];
[session beginConfiguration];
[device lockForConfiguration:nil];
[device setTorchMode:AVCaptureTorchModeOn];
[device unlockForConfiguration];
[session commitConfiguration];
[session startRunning];
[self setAVSession:session];
[output release];
[session release];
}
else
{
NSLog( @"Light OFF");
[AVSession stopRunning];
[AVSession release],AVSession = nil;
}
将其关闭可以正常/正常运行。
为什么会这样? - 我怎么解决这个问题?
最佳答案
在此帖子上查看答案-效果更好,没有闪烁。
Turn on torch/flash on iPhone