如何在iOS中增加前台应用音量和暂停后台应用音量

时间:2017-11-23 06:41:05

标签: ios objective-c audio volume background-foreground

我必须暂停后台应用音频播放器并在前台应用中播放一些指令,

我的方案是什么:

1)音量增加的场景

在我的情况下,我增加了媒体音量,如果播放前景应用指令的音量很慢,请在代码下方使用。

  AVAudioSession *audioSession = [AVAudioSession sharedInstance];
  CGFloat volume = audioSession.outputVolume;
  NSLog(@"%.2f", volume);
  if ((volume > 0 && volume < 1) || volume == 0)
  {  
    MPVolumeView* volumeView = [[MPVolumeView alloc] init];
    //find the volumeSlider
    UISlider* volumeViewSlider = nil;
    for (UIView *view in [volumeView subviews]){
    if ([view.class.description isEqualToString:@"MPVolumeSlider"]){
      volumeViewSlider = (UISlider*)view;
       break;
     }
    }
    [volumeViewSlider setValue:1.0f animated:YES];
    [volumeViewSlider 
    sendActionsForControlEvents:UIControlEventTouchUpInside];
  }

在这种情况下,如果后台应用程序音频播放器正在以慢速音量播放某些音乐,则会突然增加两个应用中的音量。

  • 只增加前景应用量的替代方法。

    2)暂停后台应用音量的场景。

如果在后台播放任何其他媒体,我们需要在导航指令等前台应用程序中播放指令,那么背景媒体语音应该暂停或自动降低音量。

请在两种情况下提供解决方案。

0 个答案:

没有答案