Ich arbeite an einer Augmented Reality App, die eine AVCaptureVideoPreviewLayer
verwendet, um den Video-Feed von der Kamera des Geräts anzuzeigen. Wenn Sie die App schließen und erneut öffnen (durch Drücken der Home-Taste, nicht durch gewaltsames Beenden) oder das Telefon in den Ruhezustand versetzen und dann wieder aufwecken, zeigt das AVCaptureVideoPreviewLayer
ein schwarzes Rechteck anstelle des Feeds der Kamera an.AVCaptureVideoPreviewLayer zeigt nichts in Fortsetzung
ich die Aufnahmesitzung am Initialisierung in folgt als meine viewDidLoad:
captureSession = [[AVCaptureSession alloc] init];
AVCaptureDevice *videoDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (videoDevice) {
NSError *error;
AVCaptureDeviceInput *videoIn = [AVCaptureDeviceInput deviceInputWithDevice:videoDevice error:&error];
if (!error) {
if ([captureSession canAddInput:videoIn])
[captureSession addInput:videoIn];
else
NSLog(@"Couldn't add video input");
} else
NSLog(@"Couldn't create video input");
} else
NSLog(@"Couldn't create video capture device");
[captureSession startRunning];
AVCaptureVideoPreviewLayer *previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:captureSession];
previewLayer.frame = cameraView.bounds;
previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
[[cameraView layer] addSublayer:previewLayer];
Wie reagieren Sie darauf? – Alper