加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift 获取系统音量||监听系统音量变化

发布时间:2020-12-14 06:35:23 所属栏目:百科 来源:网络整理
导读:1.获取当前系统音量 AVAudioSession属于MediaPlayer,在class前面 import MediaPlayer 即可使用之获取系统当前音量,代码如下: do { try AVAudioSession . sharedInstance (). setActive ( true ) } catch let error as NSError { print ( " ( error )" )


1.获取当前系统音量

AVAudioSession属于MediaPlayer,在class前面 import MediaPlayer 即可使用之获取系统当前音量,代码如下:

do{

tryAVAudioSession.sharedInstance().setActive(true)

}catchlet error asNSError{

print("(error)")

}

let currentVolume =AVAudioSession.sharedInstance().outputVolume

ps:一定要setActive(true),一开始就是死在这里


2.监听系统音量变换

使用NSNotificationCenter可以监听到ios系统的好多动作,这里音量变化监听的动作是:AVSystemController_SystemVolumeDidChangeNotification

代码如下:

func systemVolumeListener(){

NSNotificationCenter.defaultCenter().addObserver(self,

selector: "voiceChange:",name:"AVSystemController_SystemVolumeDidChangeNotification",

object:nil)

UIApplication.sharedApplication().beginReceivingRemoteControlEvents()

}

func voiceChange(notification:NSNotification){

let volume =notification.userInfo["AVSystemController_AudioVolumeNotificationParameter"]as!Float

print("volume:(volume)")

}


记得在destory中做处理:

func destory(){

NSNotificationCenter.defaultCenter().removeObserver(self,name: "AVSystemController_SystemVolumeDidChangeNotification",object:nil)

UIApplication.sharedApplication().endReceivingRemoteControlEvents()

}



}

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读