从音乐库中检索音乐并且无法弄清楚如何从MPMediaItem中检索歌曲的艺术作品和名称

时间:2016-09-09 05:28:37

标签: ios swift mpmediaquery mpmediaitemcollection

所以基本上我想创建一个音乐播放器,所有用户都可以使用我自己定制的音乐播放器播放他们在设备中播放的歌曲。这段代码我现在用来获取列表:

import UIKit
import MediaPlayer

class ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()

    let mediaItems = MPMediaQuery.songsQuery().items

    let mediaCollection = MPMediaItemCollection(items: mediaItems!)

    print(mediaItems)
  }
}

这会打印如下列表:

([<MPConcreteMediaItem: 0x14de96260> 1273733459653912039, <MPConcreteMediaItem: 0x14de964f0> 3069043783347985482, <MPConcreteMediaItem: 0x14de96780> 3069043783347985483, <MPConcreteMediaItem: 0x14de96a10> 914421989453240435])

我想在tableview中显示歌曲名称和图片艺术,但是新的MPMediaItems ..任何帮助都会很明显。感谢

1 个答案:

答案 0 :(得分:0)

您可以通过访问MPMediaItem property: artwork来获取图片,并通过property: title来获取歌曲名称。以下代码是在Objective-c中而不是Swift中使用的,但是它将为您提供一些想法。

for ( MPMediaItem *item in [MPMediaQuery songsQuery] ){
  // print name
  NSLog(@"song name: %@" , item.title);
  // set picture of the item into a UIImage
  UIImage *image = item.artwork;
  // show the image somewhere
  ...
}