iOS的后台任务一直有很严格的限制,一般情况下只有几类情况能使用后台任务,下面介绍其中的一种 音乐的后台播放。
1.要支持后台任务,首先你得告诉系统你需要后台任务,所以你首先在Info.plist文件中添加如下:
在Required background modes中添加 App plays audio or streams/video using AirPlay,如果你的app需要后台从网络加载数据,把第二项也添上。
2.接下来在代码中添加音乐后台播放,在播放音乐之前设置AVAudioSession,一般情况设置为AVAudioSessionCategoryPlayback
//设置音频后台播放
let session = AVAudioSession.sharedInstance()
session.setActive(true, error: nil)
session.setCategory(AVAudioSessionCategoryPlayback , error: nil)
3.如果想在控制中心(屏幕上拉)中设置音乐控制,如上一曲,下一曲,暂停,显示播放时间,那么就要用到远程控制事件(RemoteControlEvents)。