如何检测iOS设备是否处于静默模式?

Bun*_*oob 10 iphone ios swift ios8

我一直在寻找几个小时,我似乎找不到任何解释如何检测iPhone铃声是否处于静音模式的API.这就是我所说的:

iPhone铃声开关

无论如何我可以使用Swift代码找出iOS设备的静音模式是打开还是关闭?我特意寻找iOS8及以上,因为iOS5已被弃用.谢谢.

Guy*_*her 9

我认为没有,您可能不需要直接调用API来检测设备是否静音.你需要知道的是:

播放声音时,您将执行以下操作:

        try AVAudioSession.sharedInstance().setCategory({AVAudioSessionCategory})
        try AVAudioSession.sharedInstance().setActive(true)
        audioPlayer = try AVAudioPlayer(contentsOfURL: alertSound)
        audioPlayer.prepareToPlay()
        audioPlayer.play()
Run Code Online (Sandbox Code Playgroud)

{AVAudioSessionCategory},您可以指定:

AVAudioSessionCategorySoloAmbient:通过屏幕锁定和静音开关使您的音频静音

AVAudioSessionCategoryPlayBack:您的音频继续将静音开关设置为静音或屏幕锁定

  • 如果当前正在播放视频,您如何检测到它已静音? (2认同)