1.在plist文件里配置
<key>Required background modes</key>
<array>
<string>App plays audio or streams audio/video using AirPlay
</string>
</array>
2.代码里设置。这个方法最好在
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(nullable NSDictionary *)launchOptions ;
方法里调用,在别地调用也可以。
// 设置后台播放
- (void)setBackGroudPlay {
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
[audioSession setActive:YES error:nil];
}
3.其实完成前两步就可以实现后台播放了,不过后台播放最好加上一个过期时候的处理。
// 程序进入后台,执行这个方法
- (void)applicationDidEnterBackground:(UIApplication *)application {
UIBackgroundTaskIdentifier taskID = [application beginBackgroundTaskWithExpirationHandler:^{
// 如果过期了,就停止任务
[application endBackgroundTask:taskID];
}];
}