MPMediaPickerController和MPMediaitemPropertyAssetUrl

时间:2016-02-04 17:15:12

标签: ios swift assets mpmediaitem mpmediapickercontroller

我正在寻找一种方法来使用MPMediaPickerController来允许用户选择一首歌。我希望用户能够将歌曲文件路径分配给按钮,这样每次他/她按下按钮时它都会播放该特定歌曲。我不打算将文件复制到我的应用程序,只想在用户音乐库中找到它的快捷方式。在我看来,MPMediaItemPropertyAssetUrl是要走的路。如果我更正了设置媒体选择器的代码,请执行以下操作:

/recipie/12-cream-pie

我的困惑在于如何添加将返回用户资产网址的代码,以便他们可以将其添加到按钮中播放?

1 个答案:

答案 0 :(得分:0)

您需要调用委托函数:

func mediaPicker(mediaPicker: MPMediaPickerController, didPickMediaItems mediaItemCollection: MPMediaItemCollection)

然后,您可以通过MPMediaItemCollection访问媒体项目(无论用户选择什么):

for thisItem in mediaItemCollection.items as [MPMediaItem] {}

在上述行末尾的该块中,您可以访问所选项目的URL,如下所示:

let itemUrl = thisItem.valueForProperty(MPMediaItemPropertyAssetURL) as? NSURL

然后播放来自播放器的网址