我想在手机处于静音模式时播放音频。
我可以使用以下语句在> = iOS 10中执行此操作:
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, mode: AVAudioSessionModeDefault, options: .mixWithOthers)
但是我该如何在iOS 9上执行此操作? Xcode告诉我,此语句仅在iOS 10或更高版本中可用。
我尝试了以下操作,但不起作用:
答案 0 :(得分:0)
实际上,方法setCategory
在最近的Xcodes和SDK中正在迅速改变。
您需要找到正确的组合。
对于Xcode 10.2(快速语言版本4.2、5)
if #available(iOS 10.0, *) {
//Xcode 10.2 (Swift Language Version 4.2,5)
//Xcode 10.1 (Swift Language Version 4.2)
try AVAudioSession.sharedInstance().setCategory(.playback, mode: .default, options: .mixWithOthers)
} else {
//Xcode 10.2 (Swift Language Version 4.2,5)
try AVAudioSession.sharedInstance().setCategory(.playback, options: .mixWithOthers)
}
对于Xcode 10.2(快速语言版本4.0) 或Xcode 10.1(Swift语言版本4.0)
if #available(iOS 10.0, *) {
//Xcode 10.2 (Swift Language Version 4.0)
//Xcode 10.1 (Swift Language Version 4.0)
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, mode: AVAudioSessionModeDefault, options: .mixWithOthers)
} else {
//Xcode 10.2 (Swift Language Version 4.0)
//Xcode 10.1 (Swift Language Version 4.0)
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, with: .mixWithOthers)
}
(不幸的是,我找不到使用Xcode 10.1(Swift语言版本4.2)为iOS 9调用setCategory
的方法。)
无论如何,请重新检查您的Swift语言版本设置: