3

我在这里找到了一个示例,但它不适用于 ios6.1.3 (iphone 4s)。总是返回 0.187500

代码:

Float32 volume;
UInt32 dataSize = sizeof(Float32);

AudioSessionInitialize (NULL, NULL, NULL, NULL);
AudioSessionGetProperty (
                     kAudioSessionProperty_CurrentHardwareOutputVolume,
                     &dataSize,
                     &volume
                     );
NSLog(@"%f", volume);

[AVAudioSession sharedInstance].outputVolume - 也返回 0.187500

4

2 回答 2

4

浮动音量 = [[AVAudioSession sharedInstance] outputVolume];

于 2014-09-17T23:23:33.973 回答
4

您需要使用以下命令初始化音频会话:

AudioSessionInitialize (NULL, NULL, NULL, NULL);

viewDidLoad或类似的。

但是,如果您的目标是 iOS 6+,那么使用新的AVAudioSession类通常是一个更好的主意,它会为您处理:

float volume = [AVAudioSession sharedInstance].outputVolume;
于 2013-08-15T16:39:18.897 回答