Воспроизведение аудио во время приложения в фоновом режиме iOS

У меня есть приложение, в основном основанное на Core Bluetooth. Когда происходит что-то конкретное, приложение просыпается с использованием фоновых режимов Core Bluetooth и срабатывает будильник, однако я не могу включить будильник, когда приложение не на переднем плане.

У меня есть класс Alarm Singleton, который инициализируетAVAudioPlayer как это:

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                    pathForResource:soundName
                             ofType:@"caf"]];

self.player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance] setActive: YES error: nil];
[self.player prepareToPlay];
self.player.numberOfLoops = -1;
[self.player setVolume:1.0];

NSLog(@"%@", self.player);

Это метод, который вызывается, когда вызывается мой код тревоги:

-(void)startAlert
{
    NSLog(@"%s", __FUNCTION__);

    playing = YES;
    [self.player play];
    NSLog(@"%i", self.player.playing);

    if (vibrate) {
        [self vibratePattern];
    }
}

Теперь, когда приложение находится на переднем плане,self.player.playing возвращается1 Однако, когда приложение находится в фоновом режимеself.player.playing возвращается0, С чего бы это? Весь код вызывается, поэтому приложение работает и работает. Вибрация работает отлично, который используетAudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

Есть идеи, почему этот звук не воспроизводится?

Спасибо

Ответы на вопрос(7)

Ваш ответ на вопрос