具体实现思路如下:
- 1.利用kvo监听 AVAudioSession中outputVolume的值,通过avplay播放一段语音获取对应的 outputVolume的值
- 2.利用AudioServicesPlaySystemSound 播放一段语音,播放之前获取当前时间,完成后走AudioServicesAddSystemSoundCompletion自定义block完成方法,获取 播放的时间(当前时间-之前获取的时间)>播放语音说明播放了,证明没有静音,否则静音
- ps 关闭铃声的时候 AudioServicesPlaySystemSound 和 avplay都听不到声音 开铃声关闭音量 AudioServicesPlaySystemSound还是有声音,实际需求关闭音量也不要听到声音(音频)。