我不断收到错误“”类型“[AVCaptureDevice.DeviceType]”没有成员“builtInWideAngleCamera”“”

问题描述 投票:0回答:1

我不断收到错误:

类型“[AVCaptureDevice.DeviceType]”没有成员“builtInWideAngleCamera”

但我不知道如何更改此代码。我的 Xcode 版本是 14.3。 iPhone 14 pro。 这是我写的代码:

if let availableDevices = AVCaptureDevice.DiscoverySession(deviceTypes: .builtInWideAngleCamera, mediaType: 
    AVMediaTypeVideo, position: .back).devices {
    captureDevice = availableDevices.first
    beginSession()

这是唯一的错误。请告诉我解决此问题的最简单方法!

我认为一个简单的替代方案就可以了,但我什至不知道基础知识。请帮我解决。

swift avfoundation
1个回答
0
投票

主要问题是

devices
参数需要一个数组,而不是单个值。

修复后,您将收到有关

mediaType
参数的错误。您需要指定一个有效的
AVMediaType
值。

最后,

devices
AVCaptureDevice.DiscoverySession
属性不是可选的,因此您不需要
if let
,但在数组上调用
first
会给出一个可选属性,因此您需要
if let

固定代码为:

let availableDevices = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInWideAngleCamera], mediaType: .video, position: .back).devices
if let captureDevice = availableDevices.first {
    beginSession()
}
© www.soinside.com 2019 - 2024. All rights reserved.