AVAudioPlayer会影响系统声音
我使用这个代码来播放短暂的声音效果。 用户单击键盘的返回button时会发生这种情况,这会使键盘声音效果比平时更响。 是否可以在不影响系统声音的情况下播放特定音量的效果?
- (void)playCorrectAnswerSound { NSString *path = [[NSBundle mainBundle] pathForResource:@"correct" ofType:@"mp3"]; NSURL *urlPath = [NSURL fileURLWithPath:path]; self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:urlPath error:nil]; self.player.volume = 0.04; [self.player prepareToPlay]; [self.player play];
}
将您的应用程序的audio会话类别设置为AVAudioSessionCategoryAmbient
是将以下代码添加到您的应用程序委托的applicationDidFinishLaunchingWithOptions:
方法中:
NSError *sessionError = nil; [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:&sessionError]; [[AVAudioSession sharedInstance] setActive:YES error:&sessionError]; [[AVAudioSession sharedInstance] setDelegate:self];
从苹果的文档 :
此类别允许您的应用程序在播放audio时播放来自iPod,Safari和其他内置应用程序的audio。