以编程方式将iOS设备静音/静音?

我试图从我的应用程序静音设备的振铃器,但出于某种原因使用AVSystemController就像在这个答案( 如何禁用iOS系统的声音 )不会让我沉默的设备一路下来..它下降到1巴的音量,但不完全沉默。

我知道它可以完成,可能有一个像AVSystemController私人的API,我知道苹果仍然会批准应用程序,如果用户期望从应用程序的这种function(因为已经有2个应用程序,我在App Store中find以编程方式静音设备,不需要越狱或类似的东西)。

这些应用程序实际上做的更好 – 它们实际上切换了实际的静音,而不仅仅是将音量减小到零。

有谁知道这样做的方式?

任何帮助将不胜感激! 谢谢!

这对我有用,我有一个button,在游戏中打开和closures声音。 当我想要声音时,我将float设置为10;当我想要声音时,将float设置为0。

float value = 0.0f; AudioSessionSetProperty(kAudioSessionProperty_CurrentHardwareOutputVolume, sizeof(float), &value); 

更新:

另一个选项,仍然与iOS 9.1一起工作

 float vol = [[AVAudioSession sharedInstance] outputVolume]; NSLog(@"output volume: %1.2f dB", 20.f*log10f(vol+FLT_MIN)); 

对于Swift:

 let volume = AVAudioSession.sharedInstance().outputVolume print("Output volume: \(volume)") 

更新来源回答: 获取系统卷iOS