从iPod音乐库播放
问题描述:
我想从我的iPod音乐库中播放特定的歌曲。我该怎么做? 我的想法是保存MPMediaQuery的标题名称,然后在应用程序启动时稍后播放 ,因此任何人都可以有想法做到这一点?从iPod音乐库播放
谢谢。
答
基本的解决方案是保存库中每首歌的唯一标识符,也就是MPMediaItemPropertyPersistentID
。您可以使用此ID播放歌曲,并且可以将ID保存到内存中以记住用户在启动之间选择的歌曲。如果您不知道媒体播放器框架如何工作,请查看AddMusic示例代码。
您的视图控制器必须实现MPMediaPickerControllerDelegate
协议。假设你只允许用户选择一首歌曲,那么回调的基本轮廓看起来就像这样。
- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection
{
NSArray* items = [mediaItemCollection items];
if ([items count] == 1)
{
MPMediaItem* song = (MPMediaItem *)[items objectAtIndex:0];
NSNumber* persistentId = [song valueForProperty:MPMediaItemPropertyPersistentID];
// ...Save/Play here...
}
}
此时,您可以使用永久ID来播放歌曲,和/或将其保存为用户默认值。
如何发挥我们知道它的persistentId的声音? – coure2011 2010-07-03 04:30:47
如何将歌曲复制到我们知道persistentId的应用程序中? – ios 2011-01-28 06:22:24
@ios您可以使用MPMediaPropertyPredicate和MPMediaQuery类http://*.com/a/10721965/1374512 – 2013-08-16 22:11:21