繁体   English   中英

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

[英]Mute/Silence an iOS device programmatically?

我试图在我的应用程序中静音设备的铃声,但由于某些原因使用AVSystemController就像在这个答案( 如何禁用iOS系统声音 )不会让我一直沉默设备...它把它放到体积为1巴,但不是完全沉默。

我知道它可以完成,可能是使用像AVSystemController这样的私有API,我知道如果用户期望从应用程序中获得这种功能,Apple仍会批准该应用程序(因为我已经在App Store找到了2个应用程序以编程方式静音设备,无需越狱或类似的东西)。

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

有谁知道这样做的方式?

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

这对我有用,我有一个按钮可以在游戏中打开和关闭声音。 我希望声音打开时将浮动设置为10,当我想要声音关闭时设置为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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM