我正在为 iOS 编写一个音乐播放器,它需要具有内置音乐应用程序的所有功能。我的应用程序需要继续在后台运行,所以我必须使用 AVPlayer 类。
有没有我可以使用的开源实现来代替自己编写整个东西?
我正在为 iOS 编写一个音乐播放器,它需要具有内置音乐应用程序的所有功能。我的应用程序需要继续在后台运行,所以我必须使用 AVPlayer 类。
有没有我可以使用的开源实现来代替自己编写整个东西?
刚发现这个。它工作得很好:
如果您想播放 iTunes 音乐库中的曲目,并且不想使用MPMusicPlayerController
该类,那么最好的选择是使用AVPlayer
或AVQueuePlayer
(的子类AVPlayer
)。您必须建立适当的音频会话并注册以接收远程控制事件,以便应用程序继续在后台播放音乐。
这种方法有缺点;您将无法播放从 iTunes 商店购买的受 DRM 保护的曲目和有声读物。无法使用该类实例化 iTunes Match 下载AVPlayer
。此外,如果您想添加无间隙播放和均衡器设置,您将需要做一些工作(最接近无间隙播放的是AVQueuePlayer
子类,尽管理论上,您可以将AVPlayer
s 与 an重叠NSTimer
)。
您还需要将 Info.plist 中的“所需背景模式”更改为“应用播放音频”
至于您的应用程序的其余部分,我建议您阅读UITabBarController
s 和UITableViewController
s 以及MPMediaQuery
s。
有关音频部分,请参阅此解决方案。