iOS:访问设备硬件audio音量控制

我已经在我的应用程序中实现了这个stream媒体( https://github.com/DigitalDJ/AudioStreamer ),它运行得非常好,但是它没有实现音量控制,任何人都有提示如何开始使用音量滑动或什么?

我正在寻找一些类似的问题:

  • iOS:更改设备音量

  • 访问iOS设备上的硬件信息

  • iOS系统音量控制

没有find任何这些有用的回答我的问题,如何改变音量(上/下),当然挂钩到某种控制,即滑块,任何帮助表示赞赏

确保将MediaPlayer框架添加到您的项目中

你必须在.h文件中定义一个视图来放置滑块,在这种情况下,“viewVolume”

信息:这只能在一个真正的设备上模拟器工作。

#import <MediaPlayer/MediaPlayer.h> - (void)showTheVolumeSlider { MPVolumeView *volumeViewSlider = [[MPVolumeView alloc] initWithFrame:viewVolume.bounds] ; [viewVolume addSubview:volumeViewSlider]; [volumeViewSlider sizeToFit]; } 

这段代码正在使用ARC。

这个代码也可以工作:

 musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; musicPlayer.volume = slider.value; 

但如果你想使用这个,你必须build立一个系统来更新滑块,因为设备的音量是从其他地方调整的

这将更新音量的工作,但我不知道这是最好的方式

  timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(updateSound) userInfo:nil repeats:YES]; 

这个来更新UISlider:

 - (void)updateSound { musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; slider.value = musicPlayer.volume; // value from 0.0 to 1.0 } 

您可以使用MPVolumeView 。 这给你一个控制音量的UISlider