- (IBAction)changeMode:(UISwitch *)sender {
if
(sender.on)
{
NSLog(@
"ON"
);
self.sosStartBtn.enabled = NO;
self.sosStopBtn.enabled = NO;
if
([self.captureDevice hasTorch] && [self.captureDevice hasFlash])
{
if
(self.captureDevice.torchMode == AVCaptureTorchModeOff)
{
[self.captureSession beginConfiguration];
[self.captureDevice lockForConfiguration:nil];
[self.captureDevice setTorchMode:AVCaptureTorchModeOn];
[self.captureDevice setFlashMode:AVCaptureFlashModeOn];
[self.captureDevice unlockForConfiguration];
[self.captureSession commitConfiguration];
}
}
[self.captureSession startRunning];
}
else
{
NSLog(@
"Off"
);
self.sosStartBtn.enabled = YES;
self.sosStopBtn.enabled = YES;
[self.captureSession beginConfiguration];
[self.captureDevice lockForConfiguration:nil];
if
(self.captureDevice.torchMode == AVCaptureTorchModeOn)
{
[self.captureDevice setTorchMode:AVCaptureTorchModeOff];
[self.captureDevice setFlashMode:AVCaptureFlashModeOff];
}
[self.captureDevice unlockForConfiguration];
[self.captureSession commitConfiguration];
[self.captureSession stopRunning];
}
}