1

嗨,我有一个计步器应用程序,它使用定位服务留在后台,现在我需要每 1000 步播放一次哔声。

我正在尝试这样玩:

AVAudioSession *audioSession = [AVAudioSession sharedInstance];
BOOL success = [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];

NSURL *audioFileLocationURL = [[NSBundle mainBundle] URLForResource:@"beep" withExtension:@"mp3"];

success = [audioSession setActive:YES error:nil];
AVPlayerItem * item = [[AVPlayerItem alloc] initWithURL:audioFileLocationURL];
queuePlayer = [[AVQueuePlayer alloc] initWithItems:@[item]];

[queuePlayer play];

但它不播放,如果我在应用程序处于前台时运行此代码,它会播放,但我在后台运行它时它什么都不做。

任何想法?

谢谢!

4

1 回答 1

1

我仍然不明白为什么,但我设法让它工作。

我必须做的是在应用程序处于活动状态时播放音乐(静音)一段时间,然后暂停它。

之后,如果我在后台恢复播放,一切都会正常。

于 2013-07-25T09:16:42.787 回答