1

我觉得从标题就很清楚了...

问题: 我已经有一些使用 AVFoundation 及其 AVAudioPlayer 在我的 iPhone 应用程序中播放一些声音的 Objective-c 代码,它为文档中的文件夹获取路径并使用 AVAudioPlayer 一个接一个地播放其中的所有文件对象(我实现了 AVAudioPlayerDelegate 所以我可以在当前文件完成后给播放器下一个文件)...

问题: 现在,当我的应用程序在后台运行时,我怎样才能让这些声音继续播放,因为我将设备升级到 iOS 4.1 以及我的 iOS SDK 和 Xcode...

我做了什么: 我将“UIBackgroundModes”添加到我的 info.plist 文件中并将“audio”放入其中,并将 AVAudioSeession 中 sharedInstance 的类别设置为 AVAudioSessionCategoryPlayback 并将 setActive 设置为 YES 并且没有发生错误,但是当我按下主页按钮,音乐停止!

我还应该做什么?

提前致谢

4

1 回答 1

0

我遇到了这个问题,并以这种方式解决了:我添加了 UIBackgroundModes 并将音频放在那里。然后在我的 AudioPlayer 类(我播放音频的类)中的“init”方法中,我输入了以下代码:

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil];

注意:在模拟器中这不起作用!你需要真实的设备。

于 2011-10-02T06:28:55.987 回答