如何在 Apple 的 AVCaptureDevice.DeviceType API 中找出哪些 iOS 硬件设备与这些设备相关联?

How do I find out which iOS hardware devices are associated with the devices in Apple's AVCaptureDevice.DeviceType API?

提问人:Ethan Allen 提问时间:2/23/2023 最后编辑:Ethan Allen 更新时间:2/23/2023 访问量:122

问:

我正在查看 Apple 的 API。但在文档中,苹果并没有具体谈论哪个发布的硬件具有哪个摄像头系统。AVCaptureDevice.DeviceType

例如,我知道 iPhone 14 Pro 使用它(它有三个摄像头,我个人使用它来调试我的应用程序),但其他硬件设备使用什么?某处有列表吗?.builtInTripleCamera.builtInTripleCamera

那么 https://developer.apple.com/documentation/avfoundation/avcapturedevice/devicetype 上列出的所有其他产品呢?.builtInDualWideCamera

还是让我自己尝试解决这个问题?

为什么我想知道这个......

我正在尝试根据历史设备发布顺序确定阵列的正确顺序。我希望我使用 Apple 在他们自己的相机应用程序上显示的默认值,而 Apple 不清楚这到底是什么。DeviceTypeDiscoverySessionAVCaptureVideoPreviewLayer

例如,在此代码中:

let deviceTypes: [AVCaptureDevice.DeviceType]
deviceTypes = [.builtInTripleCamera, .builtInDualWideCamera, .builtInDualCamera, .builtInWideAngleCamera]

let session = AVCaptureDevice.DiscoverySession(
    deviceTypes: deviceTypes,
    mediaType: .video,
    position: .back
)

我应该输入什么顺序才能匹配 Apple 用于他们自己的默认相机应用程序的顺序?之前有吗?我是否应该包含在列表中,是否有只有这种类型的相机的设备?我怎么知道?deviceTypes.builtInDualWideCamera.builtInDualCamera.builtInUltraWideCamera

iOS Swift iPhone iPad

评论

0赞 matt 2/23/2023
你为什么需要知道这一点?只需查看当前设备具有什么并采取相应措施;按型号区分是没有好处的。这就像屏幕尺寸一样;您不会保留设备和屏幕尺寸的列表,而是查看设备的屏幕有多大。
0赞 Ethan Allen 2/23/2023
@matt因为我正在尝试根据数组的发布来确定数组的正确顺序。我希望我使用 Apple 在其相机应用程序上显示的默认值,而 Apple 不清楚这到底是什么。AVCaptureDevice.DeviceTypeAVCaptureDevice.DiscoverySessionAVCaptureVideoPreviewLayer
0赞 Ethan Allen 2/23/2023
更新了我的问题,使其更清楚。

答: 暂无答案