到目前为止,我一直在使用MPVolumeView
来控制我的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
玩一些东西,然后就行了。否则就不会。
有谁可以让我再次上班?我真的需要控制整个设备的音频级别(不一定是编程方式,用户需要能够在我的应用程序中更改它),而不仅仅是应用程序本身播放的声音级别。
答案 0 :(得分:0)
经过长时间的研究,我已经将答案交给了这里。但是如果你有任何问题让我知道,我不确定试试这个
您可以使用:
代替MPVolumeView
AVAudioPlayer *testPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:@"m" ofType:@"caf"]] error:nil];
[testPlayer prepareToPlay];
在安装MPVolumeView
。
如果您使用Audio session
模式AVAudioSessionModeVoiceChat
的应用不允许MPVolumeView
同时无法解决问题。