トーチとフラッシュをオンにする次のコードがあります。
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ([device hasTorch]) {
[self.session beginConfiguration];
[device lockForConfiguration:nil];
if(self.flashlightOn == YES)
{
[device setTorchMode:AVCaptureTorchModeOn];
[device setFlashMode:AVCaptureFlashModeOn];
NSLog(@"TurnFlashOn");
}
else
{
[device setTorchMode:AVCaptureTorchModeOff];
[device setFlashMode:AVCaptureFlashModeOff];
NSLog(@"TurnFlashOff");
}
[device unlockForConfiguration];
[self.session commitConfiguration];
しかし、コードが呼び出されると、セッションがフリーズするように見えます。 [device setTorchMode:] 部分を削除すると、すべて正常に動作します。ここで何が起こっているか知っている人はいますか?
編集:IDEなしでアプリを実行している場合にのみ表示されます->単独で