是否可以在不停止 iPod 音乐的情况下播放声音?
Posted
技术标签:
【中文标题】是否可以在不停止 iPod 音乐的情况下播放声音?【英文标题】:Is it possible to play sounds without stopping iPod music? 【发布时间】:2012-06-14 15:47:46 【问题描述】:是否可以在不停止 iPod 音乐的情况下在应用内播放声音?
现在我正在使用以下,但它会停止 iPod 音乐
soundPath =[[NSBundle mainBundle] pathForResource:@"mySound" ofType:@"mp3"];
soundURL = [NSURL fileURLWithPath:soundPath];
mySound = [[AVAudioPlayer alloc] initWithContentsOfURL:soundURL error:nil];
[mySound prepareToPlay];
然后
[mySound play];
【问题讨论】:
【参考方案1】:可以,你可以使用下面的代码
// setup session correctly
AVAudiosession *audiosession = [AVAudioSession sharedInstance];
[audiosession setCategory:AVAudioSessionCategoryPlayback error:nil];
OSStatus propertySetError = 0;
UInt32 mixingAllow = true;
propertySetError = AudioSessionSetProperty ( kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof (mixingAllow),&mixingAllow);
NSError *error = nil;
[audiosession setActive:YES error:&error];
// play sound
NSURL *url = [NSURL fileURLWithPath:filePath];
AVAudioPlayer *audioplayer = [[[AVAudioPlayer alloc] initWithContentsOfURL:url error:&;error]autorelease];
【讨论】:
【参考方案2】:是的,或者只是
AVAudioSession *audiosession = [AVAudioSession sharedInstance];
[audiosession setCategory:AVAudioSessionCategoryAmbient error:nil];
【讨论】:
以上是关于是否可以在不停止 iPod 音乐的情况下播放声音?的主要内容,如果未能解决你的问题,请参考以下文章
使用 AVAudioPlayer 在后台播放声音而不停止 ipod 音乐