前提・実現したいこと
AVAudioPlayerを用いて音楽を再生していて、バックグラウンドでも問題なく再生できているのですが、他のアプリ(iPhoneデフォルトのMusicアプリなど)で音楽を再生すると再生が止まってしまいます。再生を止めない方法はありますでしょうか。
該当のソースコード
Swift
1// 再生する audio ファイルのパスを取得 2 let audioPath = Bundle.main.path(forResource: "sample", ofType:"caf")! 3 let audioUrl = URL(fileURLWithPath: audioPath) 4 5// audio を再生するプレイヤーを作成する 6 var audioError:NSError? 7 do { 8 audioPlayer = try AVAudioPlayer(contentsOf: audioUrl) 9 } catch let error as NSError { 10 audioError = error 11 audioPlayer = nil 12 } 13 14do { 15 try AVAudioSession.sharedInstance().setCategory(.playback, mode: .default, options: .defaultToSpeaker) 16 try AVAudioSession.sharedInstance().setActive(true) 17 } catch { 18 print(error) 19 } 20 audioPlayer.delegate = self 21 audioPlayer.play()
試したこと
AVAudioSession.sharedInstance().setCategoryの第一引数を.ambientなど一通り試しましたがダメでした。仕様上解決できない気もしますが、ご回答宜しくお願いします。
あなたの回答
tips
プレビュー