ios – Swift – 当设备处于静音状态时AVAudioPlayer仍在播放声音?

我正在制作一个相当基本的应用程序,并一直在探索使用AVAudioPlayer在我的应用程序中播放声音,但我遇到的问题是,即使设备处于静音状态,它也会发出声音.这是我正在使用的代码:
var audioPlayer = AVAudioPlayer()

然后在View中加载:

AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback,error: nil)
AVAudioSession.sharedInstance().setActive(true,error: nil)
var error:NSError?
var beepOne = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("menu",ofType: "wav")!)
audioPlayer = AVAudioPlayer(contentsOfURL: beepOne,error: &error)
audioPlayer.prepareToPlay()

播放声音时:

audioPlayer.play()

当设备处于静音状态或切换到静音状态时,我需要做什么才能停止播放声音?也许在audioPlayer.play()之前,if语句检测设备是否处于静默状态?

解决方法

在第二行和第三行代码中发现了错误:
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback,error: nil)

我不得不将AVAudioSessionCategoryPlayback更改为AVAudioSessionCategoryAmbient

希望这有助于其他可能遇到同样问题的人:)

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...