如何用`AVFoundation检测相机存在?

问题描述:

现在iOS设备有0〜2个摄像头。如何检测它们?

Now iOS devices has 0~2 cameras. How to detect them?

您可以遍历视频设备...

You iterate through the video devices...

NSArray *videoDevices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
AVCaptureDevice *captureDevice = nil;

for (AVCaptureDevice *device in videoDevices) {
    if (device.position == AVCaptureDevicePositionFront) {
        //FRONT-FACING CAMERA EXISTS
    }
}

当然,你也可以使用谓词更快一些,为了你的工作;)....(建议:使用filteredArrayUsingPredicate:方法在devicesWithMediaType:)

Of course you could also do this a bit quicker with a predicate, but i'll leave that for you to work out ;).... (HINT: use the filteredArrayUsingPredicate: method on the devicesWithMediaType:)