我知道你可以在你的应用程序中播放音乐,它会在后台运行,但看起来它不起作用。当我的应用程序在iPhone上启动时,我有这段代码:
pathToAudio = [[NSBundle mainBundle] pathForResource:@"silence" ofType:@"mp3"];
audioURL = [NSURL fileURLWithPath:pathToAudio];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:audioURL error:NULL];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:NULL];
audioPlayer.numberOfLoops = -1;
[audioPlayer play];
结果是当我将应用程序发送到后台时播放音乐,但其他活动不运行。例如,在我的应用程序中,我正在收听套接字,虽然音乐在后台播放,但我的应用程序并不响应收到消息(它通常在应用程序处于前台时响应)。我做错了什么?我已经读过,当app在后台播放音乐时你可以做其他的活动,但看起来它不起作用......
编辑:我已经越狱iPhone,所以欢迎任何非常规方法。我知道,如果我在后台播放无声音频,Apple会拒绝我的应用程序而且我不关心它。我只是想知道如何在播放音乐时以任何其他方式让应用在后台运行......也许我需要拥有iPhone 4?我有iPhone 3G。
答案 0 :(得分:3)
没有什么,它只能在后台运行音频(除了一些特殊情况,如geoloc notifs和VoIP),而不是其他东西。
答案 1 :(得分:0)
您需要提供info.plist文件的规范,例如UIBackgroundModes。