swift 获取系统音量||监听系统音量变化
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() }
} } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Swift - 加速传感器(CoreMotion)的用法,小球加速运动并反
- .net reactor 学习系列(二)---.net reactor界面各功能说明
- ruby-on-rails – Rails生成错误的复数形式
- c# – ICE64:目录ApplicationProgramsFolder位于用户配置文
- [Swift]LeetCode405. 数字转换为十六进制数 | Convert a Nu
- c – Qt 5无法在SnowLeopard上部署
- 将“nil”值赋给Swift中的一般类型变量
- C语言实现程序开机自启动
- ajax在tp上的使用
- 基本正则表达式和文本处理工具之grep、egrep和fgrep