Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Play sound on iOS 9 in silent mode

Tags:

ios

audio

silent

In iOS 9 (Xcode 7, Swift 2.0) I'm trying to play a sound in silent mode using the following code:

try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .MixWithOthers)
try! AVAudioSession.sharedInstance().setActive(true)
AudioServicesPlayAlertSound(1005)

According to other answers and Apple's documentation I thought this should work but it doesn't play a sound on iOS 9 when in silent mode. It does play it when not in silent mode. From Apple's doc:

AVAudioSessionCategoryPlayback -- Playback only. Plays audio even with the screen locked and with the Ring/Silent switch set to silent. Use this category for an app whose audio playback is of primary importance.

Am I missing something here or is there a other/new way to get this to work?

like image 909
lammert Avatar asked Sep 20 '15 19:09

lammert


1 Answers

This is my code:

do {
    try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: AVAudioSessionCategoryOptions.MixWithOthers)
    }
catch {
        // report for an error
    }

AudioPlayer.play()

It works on my iPhone.

Good luck!

like image 98
Bright Avatar answered Sep 17 '22 18:09

Bright