我遇到了AVAudioPlayer卷的问题。
我可以将theAudio.volume属性设置为1.0,但我只想在用户将其iphone铃声设置为的音量播放音频。
删除volume属性默认为1.0。
这似乎微不足道,但我无法在任何地方找到它的引用。
非常感谢!
答案 0 :(得分:4)
您设置为AVAudioPlayer实例的音量只是一个相对音量,例如,如果您想播放两个声音,一个是另一个音量的一半,则将第一个设置为0.5,将第二个设置为1.0。
实际设备音量仅由用户控制,不能以编程方式进行更改。 (Audio & Video Coding How-To's - How do I access the hardware volume controller?)
您可以为控制全局卷的用户添加MPVolumeView。
答案 1 :(得分:1)
我通过设置此回调来跟踪硬件更改
AudioSessionAddPropertyListener(kAudioSessionProperty_CurrentHardwareOutputVolume, audioVolumeChangeListenerCallback, self);
但出于某种原因,我认为我得出结论,获取初始状态需要一个未发布的API调用。我此刻不记得了。也许这些信息会让你开始朝着正确的方向前进!