使用AVPlayer的全功能音乐播放器



我正在为iOS编写一个音乐播放器,它需要具有内置音乐应用程序的所有功能。我的应用需要继续在后台运行,因此我必须使用 AVPlayer 类。

是否有任何开源实现可供我使用,而不是自己编写整个东西?

刚找到这个。效果很好:

https://github.com/gangverk/GVMusicPlayerController

如果您想播放iTunes音乐库中的曲目,并且不想使用MPMusicPlayerController类,最好的选择是使用AVPlayerAVQueuePlayer(AVPlayer的子类)。您必须建立适当的音频会话并注册以接收远程控制事件,应用才能继续在后台播放音乐。

这种方法有缺点; 您将无法播放从iTunes商店购买的受DRM保护的曲目和有声读物。无法将 iTunes Match 下载实例化为AVPlayer类。此外,如果您想添加无间隙播放和均衡器设置,您将需要一些工作(最接近无缝播放的是AVQueuePlayer子类,尽管理论上,您可以将AVPlayers 与NSTimer重叠)。

您还需要将 Info.plist 中的"必需背景模式"更改为"应用播放音频">

至于你的应用程序的其余部分,我建议你阅读UITabBarControllers和UITableViewControllers以及MPMediaQuerys。

有关音频部分,请参阅此解决方案。

最新更新