Ios 比较音频会话、位置和;A音频。Swift中的方向

Ios 比较音频会话、位置和;A音频。Swift中的方向,ios,swift,avfoundation,avaudiosession,Ios,Swift,Avfoundation,Avaudiosession,AVAudioSession.Orientation在Swift中没有定义常量。如果给定了一个AVAudioSession.Location值,我们如何将其与AVAudioSession.Orientation类型的值进行比较 具体来说,我发现了以下工作,但我不确定这是否是一种可靠和正确的比较方法,以及它是否能在所有iOS版本上始终工作 var preferredDataSource:AVAudioSessionDataSourceDescription? let preferr

AVAudioSession.Orientation在Swift中没有定义常量。如果给定了一个AVAudioSession.Location值,我们如何将其与AVAudioSession.Orientation类型的值进行比较

具体来说,我发现了以下工作,但我不确定这是否是一种可靠和正确的比较方法,以及它是否能在所有iOS版本上始终工作

    var preferredDataSource:AVAudioSessionDataSourceDescription?
    let preferredMicrophoneLocation = AVAudioSession.Location.orientationFront

     if let dataSources = builtinMicPort.dataSources {
           for source in dataSources
               {
                if source.orientation?.rawValue == preferredMicrophoneLocation.rawValue 
                            preferredDataSource = source
                            break
                        }
                    } // end data source iteration
                }
     }