9

到目前为止,我一直在使用 anMPVolumeView来控制我的 iOS 设备的音量,在更新到 iOS7 之前效果很好。

我创建了一个测试项目 ( Base SDK 6.1, Deployment Target 5.1),其中只有MPVolumeView一个UIView. 虽然在我的 iPad 1 (iOS 5.1) 上运行这个应用程序工作得很好,但在我的 iPhone 5 (iOS 7) 上运行它却不行。

在我的 iPad 上拖动音量滑块会改变整个设备的音量。此外,当我使用硬件按钮时,这确实反映在 VolumeView 中的滑块上。另一方面,在我的 iPhone 上,这些控件之间似乎不再有联系。硬件按钮不会导致我的 VolumeView 发生任何变化,更改音量控制中的滑块也不会导致设备音量级别。

我需要例如iPodMusicPlayer播放某些东西,然后它才能工作。否则不会。

有谁我可以让它再次工作?我真的需要控制整个设备的音频级别(不一定以编程方式,用户需要能够在我的应用程序中更改它),而不仅仅是应用程序本身播放的声音级别。

4

1 回答 1

0

经过长时间的研究,我已经将答案发送到这里。但是我不确定如果您遇到任何问题请告诉我

代替MPVolumeView,您还可以使用:

 AVAudioPlayer *testPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:@"m" ofType:@"caf"]] error:nil];

    [testPlayer prepareToPlay];

在安装MPVolumeView.

如果您的应用程序使用Audio session模式AVAudioSessionModeVoiceChat不允许在MPVolumeView没有解决方法的情况下正常工作。

于 2013-11-29T06:09:25.787 回答