【发布时间】:2018-01-26 05:05:30
【问题描述】:
我正在尝试播放捆绑包(来自项目)中的音频文件,当用户设置设备的静音模式时,它应该是静音的。我的代码在这里
let audioSession = AVAudioSession.sharedInstance()
ringURl = Bundle.main.url(forResource: "ring", withExtension: "m4r")
do {
try audioSession.setCategory(AVAudioSessionCategorySoloAmbient)
try audioSession.overrideOutputAudioPort(speakerType)
}
do {
player = try AVAudioPlayer(contentsOf: ringURl)
guard let player = player else { return }
player?.prepareToPlay()
player?.play()
} catch let error as NSError {
print(error.description)
}
} catch let error as NSError {
print("audioSession error: \(error.localizedDescription)")
}
但它的表演
audioSession 错误:操作无法完成。 (OSStatus 错误 -50。)
错误且无法正常工作。请帮忙。
【问题讨论】:
-
只有在设备静音时才会出现该错误,还是每次都会出现该错误?
-
@MichaelDautermann,我每次尝试播放音频文件时都会遇到。
-
但是如果设置了 AVAudioSessionCategoryPlayAndRecord 那么它的工作正常。
-
但是当用户设置设备的静音模式时我需要设置静音,这就是我尝试 AVAudioSessionCategorySoloAmbient 的原因
标签: ios avplayer avaudioplayer