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

问题描述 投票:9回答:1

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

iPhone Ringer Switch

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

ios iphone swift ios8
1个回答
9
投票

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

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

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

{AVAudioSessionCategory}中,您可以指定:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.