Swift3 获取系统音量和监听系统音量
使用时:
//定义滑动条用于显示音量 @IBOutlet weak var volumSlider: UISlider!
//处理声音,获取当前音量,并添加监听 handleVolum()
方法内容:
func handleVolum() { do{ try AVAudioSession.sharedInstance().setActive(true) }catch let error as NSError{ print("\(error)") }
//获取并赋值 volumSlider.value = AVAudioSession.sharedInstance().outputVolume
//添加监听 NotificationCenter.default.addObserver(self, selector: #selector(self.changeVolumSlider), name: NSNotification.Name(rawValue: "AVSystemController_SystemVolumeDidChangeNotification"), object: nil) UIApplication.shared.beginReceivingRemoteControlEvents() }
如果按动侧边栏音量键,跟随改变界面内的音量
func changeVolumSlider(notifi:NSNotification) { if let volum:Float = notifi.userInfo?["AVSystemController_AudioVolumeNotificationParameter"] as! Float?{ volumSlider.value = volum } } deinit { NotificationCenter.default.removeObserver(self) UIApplication.shared.endReceivingRemoteControlEvents() }