我需要显示设备上当前所有播放列表的列表。问题是,在打开 iTunes Match 的设备上,任何数量的播放列表都可能在手机上保存零个项目。由于(据我所知)没有可靠的方法来触发MPMediaItem download
您使用的AVAudioPlayer
,我想过滤掉任何没有任何本地条目的播放列表。现在我可以让它循环播放单个播放列表并删除没有assetURL
. 我尝试过滤整个音乐库以获取播放列表
MPMediaQuery *songsQuery = [MPMediaQuery songsQuery];
[songsQuery addFilterPredicate:[MPMediaPropertyPredicate predicateWithValue:[NSNumber numberWithBool:NO] forProperty:MPMediaItemPropertyIsCloudItem]];
songsQuery.groupingType = MPMediaGroupingPlaylist;
但是,当我循环浏览“收藏”数组时,它似乎根本没有过滤掉任何歌曲。我会尝试按歌曲是否有 过滤assetURL
,但当然你不能过滤。
有没有人有一个相当快速的方法来完成这个?(或者,有没有人想出一种体面的方法来触发MPMediaItem download
,因为 Apple 没有关于处理 iTunes Match 的开发人员文档?)