AVCapturePhotoOutput - Xcode 9 Beta 5中的更改

时间:2017-08-07 20:23:48

标签: swift xcode video avkit

刚刚安装了最新的XCode版本,它提供了AVCapturePhotoOutput类的一些更改,我想知道如何获取支持闪存模式的列表。在之前的版本中,我使用了supportedFlashModes属性,该属性不再可用

open var __supportedFlashModes: [NSNumber] { get }

2 个答案:

答案 0 :(得分:2)

我想新的Swiftified supportedFlashModes属性已经计划好,但尚未在测试版5中完成。

open var supportedFlashModes: [AVCaptureDevice.FlashMode] { get }

直到有一天我的猜测将被确认(可能是否定的),您可以使用__supportedFlashModes。它没有删除,只是重命名。

(有些beta包含这种正在构建的重命名。)

您最好发送错误报告,以防Apple知道此问题。

修改 似乎iOS 11 SDK / Xcode 9.1修复了这个问题,Xcode 9.1 beta的发行说明说:

  
      
  • 现在提供以下AVFoundation API:      
        
    • AVCaptureDevice.Format.supportedColorSpaces
    •   
    • AVCaptureDevice.supportedFlashModes
    •   
    • AVCapturePhotoOutput.availablePhotoPixelFormatTypes
    •   
    • AVCapturePhotoOutput.availableRawPhotoPixelFormatTypes
    •   
    • AVCapturePhotoSettings.availablePreviewPhotoPixelFormatTypes
    •   
  •   
     

以前修改过的代码使用双下划线作为   应修改变通方法以使用这些公共符号或应用程序   可能会被App Store拒绝

(添加了大胆的风格。)

答案 1 :(得分:0)

Apple相机开发团队确认,Swift版本的API无意中被排除在Xcode 9版本之外。 在修复之前必须使用__supportedFlashModes

见这里:https://forums.developer.apple.com/thread/86810 BTW其他一些AVFoundation API也受到影响。