简体   繁体   English

如何在后台播放音频文件?

[英]How to play a audio file in the background?

How can I play an audio file in the background? 如何在后台播放音频文件?

This is my code: 这是我的代码:

    NSString *soundFilePath = [[NSBundle mainBundle] pathForResource:@"Alarm" ofType:@"caf"];
    NSData *sampleData = [[NSData alloc] initWithContentsOfFile:soundFilePath];
    NSError *audioError = nil;

    alarmAudioPlayer = [[AVAudioPlayer alloc] initWithData:sampleData error:&audioError];
    [sampleData release];
    [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil];



    if(audioError != nil) {
        NSLog(@"An audio error occurred: \"%@\"", audioError);
    }
    else {
        [alarmAudioPlayer setNumberOfLoops: -1];
        [alarmAudioPlayer play];
    }

    }

But it doesn't continue playing when I multitask, but then resumes when I multitask back to the app. 但是当我执行多任务时它不会继续播放,但是当我多任务回到应用程序时它会恢复。

Note: I know this is a duplicate of a old question but that answer didn't work for me. 注意:我知道这是一个旧问题的副本,但该答案对我不起作用。

Make sure you have set your application to utilize the background audio API. 确保已将应用程序设置为使用后台音频API。 Add this entry in your app's Info.plist : 在您的应用的Info.plist添加此条目:

在此输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM