我正在尝试在iPod音乐的基础上播放声音但是当我进入我的应用程序时,iPod声音会自动静音。我试过了:
UInt32 sessionCategory = kAudioSessionCategory_AmbientSound;
AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,
sizeof (sessionCategory),
&sessionCategory
);
但可能是因为我使用RemoteIO / Audio Units来播放我的声音,这没有任何效果(不确定这是否是原因,但确定无效......声音仍然停止)
我遗失了什么?
答案 0 :(得分:3)
出于某种原因,问题中的代码不起作用,但这有效:
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil];
答案 1 :(得分:1)
AudioSessionSetProperty返回错误,您要检查吗?
您可能忘记调用AudioSessionInitialize,这是您不需要对AVFoundation包装器执行的操作。
答案 2 :(得分:1)
@property (nonatomic, strong) AVAudioPlayer * avAudioPlayer;
NSString *zeroAudioPath = [[NSBundle mainBundle] pathForResource:@"customSound" ofType:@"wav"];
NSURL *file = [[NSURL alloc] initFileURLWithPath:zeroAudioPath];
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:file
error:nil];
self.avAudioPlayer = audioPlayer;
self.avAudioPlayer.delegate = self;
[_zeroAudioPlayer prepareToPlay];
AVAudioSession *session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:&error];
[_zeroAudioPlayer play];
希望它会对你有所帮助。