Change audio route when playing audio

I have a sound file that is played using avaudioplayer, I want the sound to play on the device receiver or speaker when the sound is played when the user presses the button. How can i do this? Currently, it simply reproduces everything that was selected before the sound began.

+5
source share
3 answers
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
OSStatus result = AudioSessionSetProperty( kAudioSessionProperty_OverrideAudioRoute, sizeof(audioRouteOverride), &audioRouteOverride );
Assert(result == kAudioSessionNoError);
+6
source

iOS version 6+

NSError* error;

AVAudioSession* session = [AVAudioSession sharedInstance];

[session overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker error:&error];
+2
source

MPVolume ( ) showVolumeSlider = NO showRouteButton = YES.

.

+1

All Articles