2017-10-03 2 views
1

aufgerufen werden Ich habe AVAudioSessionRouteChangeReason Benachrichtigung untersucht. Einer von ihnen istunter dem Szenario AVAudioSessionRouteChangeReasonRouteConfigurationChange kann

AVAudioSessionRouteChangeReasonRouteConfigurationChange 

Laut Apple-Dokument: AVAudioSessionRouteChangeReasonRouteConfigurationChange

Der Satz von Eingangs- und Ausgangsanschlüsse hat sich nicht verändert, aber ihre Konfiguration hat, zum Beispiel eine ausgewählte Datenquelle geändert hat Hafen.

Es ist nicht sehr klar, unter welchem ​​Szenario AVAudioSessionRouteChangeReasonRouteConfigurationChange aufgerufen werden kann. Wenn jemand ein Beispiel geben könnte, was die ausgewählte Datenquelle eines Ports geändert hat?

Dank

Antwort

0

Ich bin auch für die ‚Doc‘ Antwort suchen, aber ich kann auch einige Beispiele geben. Nach dem Telefonat beendet I AVAudioSessionInterruptionTypeEnded Benachrichtigung und nur, nachdem er dieses erhalten:

{ 
AVAudioSessionRouteChangePreviousRouteKey = "<AVAudioSessionRouteDescription: 0x1c001e380, \ninputs = (null); \noutputs = (\n \"<AVAudioSessionPortDescription: 0x1c001e4d0, type = Speaker; name = G\\U0142o\\U015bnik; UID = Speaker; selectedDataSource = (null)>\"\n)>";  
AVAudioSessionRouteChangeReasonKey = 8; 
} 

und neue Route war:

<AVAudioSessionRouteDescription: 0x1c401de70, 
inputs = (
    "<AVAudioSessionPortDescription: 0x1c401dac0, type = MicrophoneBuiltIn; name = iPhone Mikrofon; UID = Built-In Microphone; selectedDataSource = Bottom>" 
); 
outputs = (
    "<AVAudioSessionPortDescription: 0x1c401df10, type = Speaker; name = G\U0142o\U015bnik; UID = Speaker; selectedDataSource = (null)>" 
)> 

So sieht es aus wie ausgewählte Datenquelle für Mikrofon von null nach unten verändert.