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

Eon*_*nil 3 camera detection ios

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

Sim*_*Lee 18

你遍历视频设备......

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

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

当然你也可以用谓词更快地做到这一点,但我会留给你解决问题;)....(提示:在devicesWithMediaType上使用filteredArrayUsingPredicate:方法:)

  • 如果要检查是否存在任何摄像头,则可以使用UIImagePickerViewController并检查sourceTypeAvailable. (3认同)