如何以编程方式静音我的应用程序(禁用声音)

时间:2017-11-01 05:39:48

标签: ios swift xcode webkit avfoundation

我正在创建隐藏广告的应用浏览器。几乎完成了。有时在浏览器中有自动播放声音(可能是用JavaScript驱动的)

现在我需要关闭此应用中的所有声音。我尝试了两种方法:通过AVFoundation和WebKit。

请帮助我了解如何做到这一点。还欢迎另外一个变种:)

2 个答案:

答案 0 :(得分:1)

这可以通过MediaPlayer模块完成:

(MPVolumeView().subviews.filter{ NSStringFromClass($0.classForCoder) == "MPVolumeSlider" }.first as? UISlider)?.setValue(0, animated: false)

请注意您可以更改的两个值:

value: how much volume you want (0 in this case)
animated: allowing you to animate the change visually

答案 1 :(得分:0)

Swift 5 / Xcode 11

第 1 步:

import MediaPlayer

第 2 步:

let slider = MPVolumeView().subviews.first(where: { $0 is UISlider }) as? UISlider

第 3 步:

slider?.setValue(0.0, animated: false)