我需要在我的iPhone应用程序中循环播放.caf文件。
AVAudioPlayer看起来很有前途。但是有一个问题。即使按下iPhone上的静音按钮,它也不会停止或静音。
我知道在iOS 5中无法以编程方式找出是否按下了静音按钮。
所以,我需要知道的可能是AVAudioPlayer或AVAudioSession的一些属性。或者,也许,我可能需要考虑其他库来循环播放我的.caf文件。
有什么想法吗?
答案 0 :(得分:25)
我意识到这是因为我有这行代码
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil];
然后我将其改为
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil];
然后静音按钮将起作用并停止我的AVAudioPlayer ......
答案 1 :(得分:0)
swift 3.0的2美分:
let sharedSession = AVAudioSession.sharedInstance()
do {
try sharedSession.setCategory(AVAudioSessionCategoryAmbient)
} catch _{
return false
}
或更简单:
try? sharedSession.setCategory(AVAudioSessionCategoryAmbient)
答案 2 :(得分:0)