【问题标题】:iPhone - Detecting if the iDevice has a front cameraiPhone - 检测 iDevice 是否有前置摄像头
【发布时间】:2011-04-12 00:23:03
【问题描述】:

Apple 建议不要搜索硬件版本,而是搜索您感兴趣的特定功能。

那么如何检测设备上是否有前置摄像头才能禁用某些功能?

[UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera] 只告诉某处有摄像头。

【问题讨论】:

    标签: iphone camera


    【解决方案1】:

    试试UIImagePickerController这个方法:

    + (BOOL)isCameraDeviceAvailable:(UIImagePickerControllerCameraDevice)cameraDevice

    这是一个类方法,UIImagePickerControllerCameraDevice 可以取两个值:

    • UIImagePickerControllerCameraDeviceRear
    • UIImagePickerControllerCameraDeviceFront

    示例代码:

    if( [UIImagePickerController isCameraDeviceAvailable: UIImagePickerControllerCameraDeviceFront ])
    {
       // do something
    }
    

    请注意,这适用于 iOS 4.0 及更高版本。

    【讨论】:

    • Uhhhh,好的,但如果这仅适用于 iOS 4 及更高版本,那可能是愚蠢的,但如果我的用户使用 iOS 3 的 3G,我如何检测可用的相机之王,不问硬件?
    • 使用isSourceTypeAvailable:。如果设备运行 iOS3,则只有一个摄像头。
    • [UIImagePickerController respondsToSelector:@selector(isCameraDeviceAvailable:)] 当然。
    • @Oliver:对于使用iOS
    【解决方案2】:

    在斯威夫特中

    imagePicker.cameraDevice = UIImagePickerControllerCameraDevice.Front
    

    【讨论】:

    • 那设置了cameraDevice,但你不需要先和isCameraDeviceAvailable(_:)核对吗?
    猜你喜欢
    • 2015-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-21
    • 2011-04-08
    • 1970-01-01
    相关资源
    最近更新 更多