appdelegate中加入如下代码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//监听系统音量变化
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryAmbient error:nil];
[session setActive:YES error:nil];
NSError *error;
[[AVAudioSession sharedInstance] setActive:YES error:&error];
//iOS9以上加上这句
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
}
然后在需要的页面加入监听:
//监听系统音量
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChangeNotification:)name:@"AVSystemController_SystemVolumeDidChangeNotification" object:nil];
回调:
//系统音量回调
- (void)volumeChangeNotification:(NSNotification *)noti {
float volume = [[[noti userInfo] objectForKey:@"AVSystemController_AudioVolumeNotificationParameter"] floatValue];
NSLog(@"系统音量:%f", volume);
}
网友评论