Как получить доступ к текущей громкости iPhone и отобразить ее в своем приложении?

swift

#1

Здравствуйте.
Возможно ли получить доступ к текущему уровню громкости телефона и отобразить его в плеере?
Пока я использую вариант в AVPlayer:

@IBAction func handleVolumeChange(_ sender: UISlider) {
    player.volume = sender.value
}

с предустановленным уровнем параметра maximum UISlider, в моем случае 1, двигая бегунок слайдера все работает и громкость изменяется, но начальная громкость стоит 1, а не текущая громкость воспроизведения аудио самого iPhone. Если включить системное приложения Музыка или Подкасты, там всегда уровень слайдера громкости соответсвует текущему уровню громкости воспроизведения аудио самого iPhone.
Заранее спасибо.


#2

Нашел способ:

@IBOutlet weak var volumeChange: UISlider! {
        didSet {
        let audioSession = AVAudioSession.sharedInstance()
        let volume : Float = audioSession.outputVolume
        volumeChange.setValue(volume, animated: true)
        }
    }

теперь задача привязать значение к текущему значению самого телефона


#3

А Вы думаете это нужно?
Зачем интерфейс лишний раз нагружать?


#4

Что вы подразумеваете под “лишний раз нагружать интерфейс”?


#5

Я к тому что разве удобно дублировать громкость если она и так на кнопках есть

Это просто мое мнение)


#6

Решил вопрос:

let volumeView = MPVolumeView(frame: volumeViewSize)
playerView.addSubview(volumeView)