IOS下Swift设置系统音量

问题描述 投票:0回答:3

好的,

这可以获取系统音量,效果很好。

var volume = AVAudioSession.sharedInstance().outputVolume
print("output volume: \(volume)")

但是我该如何设置系统音量[在 Swift 中]

ios swift audio
3个回答
17
投票

这是您需要使用最新的 iOS 10.2

执行的操作

步骤 1. 导入媒体播放器

import MediaPlayer

第 2 步。 添加扩展程序

//Update system volume
extension MPVolumeView {
    static func setVolume(_ volume: Float) {
        let volumeView = MPVolumeView()
        let slider = volumeView.subviews.first(where: { $0 is UISlider }) as? UISlider

        DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 0.01) {
            slider?.value = volume
        }
    }
}

第 3 步。以这种方式更改音量

 //Update system volume
 MPVolumeView.setVolume(0.2)

感谢trungduc


10
投票

首先你需要导入媒体播放器,

import MediaPlayer

然后您可以设置系统音量,

let volumeView = MPVolumeView()
if let view = volumeView.subviews.first as? UISlider
{
     view.value = 0.1   // set b/w 0 t0 1.0       
}

希望这对您有帮助。


0
投票

这里的建议是针对苹果不希望开发者做的行为的解决方法尝试。他们的实用性在最新的 iOS 版本中参差不齐,且行为未定义。

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