iOS获取媒体库中项目的播放次数

7

我目前正在尝试对用户的音乐收藏进行分类,获取用户最常播放的歌曲/艺术家将极大地改善应用程序的用户体验。是否可以获取播放次数?如何操作呢?

3个回答

8

MPMediaItem有一个方法:

- (id) valueForProperty: (NSString *) property

这个方法返回您想要对应值的媒体属性键。其中一种可能的值是MPMediaItemPropertyPlayCount:

用户播放媒体项目的次数。该值是表示NSUInteger数据类型的NSNumber对象。

您可以在这里这里查看文档。


3
如果您想查找用户最常播放的音轨,可以采取以下方法:
  1. 将所有媒体项目(即[[MPMediaQuery songsQuery] items])及其属性存储在数据库中(如Core Data),使用NSFetchRequest检索它们,并使用NSSortDescriptor对结果进行排序。

  2. ......或者使用[[MPMediaQuery songsQuery] items]并根据MPMediaItemPropertyPlayCount属性对结果进行排序

选项(1)可能是最佳选择,特别是如果您想对音乐收藏进行分类(我猜(2)在性能方面也可能更差)。

还有类似的问题在SO上有相应的回答,可以帮助你解决问题。

查看苹果文档获取更多关于MPMediaQueries的信息。


1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接