• 获取系统当前音量 和 监听系统音量 ios


    -(float) getVolumeLevel
    {MPVolumeView*slide =[MPVolumeViewnew];UISlider*volumeViewSlider;for(UIView*view in[slide subviews]){if([[[view class] description] isEqualToString:@"MPVolumeSlider"]){
                volumeViewSlider =(UISlider*) view;}}float val =[volumeViewSlider value];[slide release];return val;}

    That should get you the current volume level. 1 is max volume, 0 is no volume. Note: no UI elements need to be displayed for this to work. Also note current volume level is relative to headphones or speakers (meaning, the two volume levels are different, and this gets you whichever the device is currently using. This doesn't answer your question regarding receiving notifications of when volume changes.

    AVSystemController

    + (id)sharedAVSystemController;

    - (void)getActiveCategoryVolume:(float*)outVolume andName:(NSString**)outName;

    Returns the volumn and name of the active category. Tells you whether headphones are plugged in.

    Notifications

    Sends a AVSystemController_HeadphoneJackIsConnectedDidChangeNotification notification when the user plus in or unplugs headphones.

    Sends a AVSystemController_SystemVolumeDidChangeNotification notification when the system volume has changed (via up/down buttons, mute switch, or programatically)

            [[NSNotificationCenterdefaultCenter] addObserver:self

                                                     selector:@selector(volumeChanged:)

                                                         name:@"AVSystemController_SystemVolumeDidChangeNotification"

                                                       object:nil];

     

    -(void)volumeChanged:(NSNotification *)notification {  [volumeViewSlider setValue:[[[notification userInfo] objectForKey:@"AVSystemController_AudioVolumeNotificationParameter"] floatValue]]; }

     

     

     

    -(void)volumeChanged:(NSNotification *)notification {  [volumeViewSlider setValue:[[[notification userInfo] objectForKey:@"AVSystemController_AudioVolumeNotificationParameter"] floatValue]]; }
     
     
     
     
     
  • 相关阅读:
    javascript中单体模式的实现
    javascript中的继承实现
    如何改变String类的值,保证地址不变!
    测试题答案
    Springboot实现文件(头像)上传
    关于处理登录,到底用拦截器还是过滤器
    关于Spring MVC中的406错误
    SSM开发过程Bug集锦
    String类型日期自动转Date数据类型
    spring的核心配置文件——ApplicationContext.xml的配置
  • 原文地址:https://www.cnblogs.com/leevaboo/p/2923628.html
Copyright © 2020-2023  润新知