我正在使用代码(在另一个项目中的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

09-25 21:03