当应用程序是背景时播放声音

时间:2014-11-28 18:40:12

标签: ios objective-c xcode avaudioplayer

应用必须在后台播放声音。在功能背景中获取和音频& airplay被检查。

播放声音的方法是

-(void)playSound
{
NSString* str = [[NSBundle mainBundle] pathForResource:@"alarm4" ofType:@"wav"];
NSURL* url = [NSURL fileURLWithPath:str];
NSError* erreur;

self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&erreur];

if(!erreur)
{
    [self.audioPlayer setVolume:1];
    [self.audioPlayer setNumberOfLoops:-1];
    [self.audioPlayer prepareToPlay];
    [self.audioPlayer play];
}

else
    NSLog(@"erreur de chargemnt %@", [erreur localizedDescription]);
}

你能给我一些建议吗?

1 个答案:

答案 0 :(得分:1)

我的建议是:甚至不要梦见这样的事情。一般来说,你不能这样做。

当你进入后台时,你可以继续播放声音,但你不能在已经中自发地产生一个声音>后台应用程序。如果发生这种情况会很糟糕,因为用户不会知道声音来自哪里,声音可能会破坏用户的音乐聆听体验等。

你应该问问自己为什么你认为自己最初需要做这样的事情。你可能不需要。

(一些Apple应用程序可以做到这一点。例如,Clock应用程序会在后台产生重复的警报声。但是,你现在可能已经注意到了,不是Apple。)