iOS声音在静音时播放

时间:2013-01-13 21:42:59

标签: ios objective-c audio

我正在为幼儿制作一个学习字母表的应用程序,我遇到了声音输出问题。无论设备的声音设置为最大还是静音,应用程序在我的ipad上测试时播放的每个声音都具有相同的音量。换句话说,无论设备的音量设置如何,都会出现相同的声级。

我用来播放声音的代码是(以A-sound为例):

- (IBAction)aSpill:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundFileURLRef;
    soundFileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"aLyd", CFSTR("wav"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID(soundFileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);

非常感谢任何帮助! :)

2 个答案:

答案 0 :(得分:1)

请在此处查看答案AudioServicesPlaySystemSound Volume? 它解释了系统声音并不总是使用系统音量。

我建议使用AVAudioPlayer来播放你的声音。

答案 1 :(得分:-1)

所以从这里开始:http://developer.apple.com/library/ios/#documentation/AudioVideo/Conceptual/MultimediaPG/UsingAudio/UsingAudio.html

使用以下类型的代码尝试使用代码。

NSString *soundFilePath =
            [[NSBundle mainBundle] pathForResource: @"sound"
                                            ofType: @"wav"];

NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];

AVAudioPlayer *newPlayer =
            [[AVAudioPlayer alloc] initWithContentsOfURL: fileURL
                                                   error: nil];
[fileURL release];

self.player = newPlayer;
[newPlayer release];

[player prepareToPlay];

大约是页面的一半。