如何以编程方式在ios应用程序中读取设备的当前铃声音量?

时间:2014-04-16 16:37:05

标签: ios objective-c audio

我只想知道如何在applicationDidFinishLaunching:withOptions:method中读取用户设置的当前铃声音量。

我在网上搜索但提出了许多令人困惑的答案。尝试了一些,但没有奏效。大多数只是阅读媒体量。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

如果您只是尝试一下,可以使用MPMusicPlayerController。它有一个名为volume的属性,它将为您提供当前的音量级别。

如果你明确提交到App Store,我建议你使用它。 MPVolumeView。不推荐使用MPMusicPlayerController的volume属性。该视图将为您提供相同的功能,但我找不到卷属性。

这是我以前用过的东西。希望它有所帮助。

    MPVolumeView *volume = [[[MPVolumeView alloc] initWithFrame:CGRectMake(18.0, 340.0, 284.0, 23.0)] autorelease];
  [[self view] addSubview:volume];

  [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChanged:) 
                                        name:@"AVSystemController_SystemVolumeDidChangeNotification" 
                                        object:nil];    
  for (UIView *view in [volume subviews]){
    if ([[[view class] description] isEqualToString:@"MPVolumeSlider"]) {
      volumeViewSlider = view;  //volumeViewSlider is a UIView * object
    }
  }
  [volumeViewSlider _updateVolumeFromAVSystemController];

-(IBAction)volumeChanged:(id)sender{
  [volumeViewSlider _updateVolumeFromAVSystemController];
}
祝你好运!