我正在使用代码(我在另一个项目中的 XCode 4 之前使用过),现在如果我打开手电筒,它会闪烁一次,然后再继续亮着。
像这样:-*-****
where -
=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;
}
关闭它可以正常/正常工作。
为什么会发生这种情况?- 我怎么解决这个问题?