AVAudioPlayer не начинает играть в фоновом режиме

я используюAVAudioPlayer а такжеNSFileHandle делать потоковое аудио. Основная идея заключается в том, что я сохраняю потоковые аудиоданные на устройство с файловой системой, а затем используюAVAudioPlayer для воспроизведения только что сохраненного файла.AVAudioPlayer может по-прежнему воспроизводить этот файл, даже если идет потоковая передача.

у меня естьUIButton начать потоковую передачу / загрузку. Когда загруженные данные накапливаются до определенного количества байтов,AVAudioPlayer будет игратьиграть" методAVAudioPlayer срабатывает) автоматически. Мой вопрос: я нажимаю кнопку, чтобы начать потоковую передачу / загрузку, а затем нажмите iPhone 'Очень скоро кнопка «Домой» заставит мое приложение перейти в фоновый режим. Загрузка продолжает работать в фоновом режиме, но "играть" методAVAudioPlayer возвращаетсяНЕТ» что означает "играть" метод нене воспроизводить аудио.

я добавилAVAudioSession код, связанный с моим аудиоплееромМетод инициализации:

- (id) initWithURL:(NSString *) downloadedMusicURL
{
    if ((self = [super init]))
    {       
        [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

        CFURLRef url = CFURLCreateWithFileSystemPath (NULL, (CFStringRef)downloadedMusicURL, kCFURLPOSIXPathStyle, FALSE);

        audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:CFBridgingRelease(url) error:nil];

        AVAudioSession *session = [AVAudioSession sharedInstance];
        [session setActive:YES error:nil];
        [session setCategory:AVAudioSessionCategoryPlayback error:nil];
    }

    return self;
}

Также в info.plist я добавил элемент "Приложение проигрывает аудио " за ключ "Требуемые фоновые режимы », Тем не менее "играть" до сих пор нев фоновом режиме. Что еще я пропустил? Заранее большое спасибо.

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

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