gpt4 book ai didi

ios - MPMediaPickerController 和 MPMediaitemPropertyAssetUrl

转载 作者:行者123 更新时间:2023-11-30 13:43:55 25 4
gpt4 key购买 nike

我正在寻找一种使用 MPMediaPickerController 来允许用户选择歌曲的方法。我希望用户能够将歌曲文件路径分配给按钮,以便每次他/她按下按钮时都会播放该特定歌曲。我不想将文件复制到我的应用程序,只想在用户音乐库中提供该文件的快捷方式。在我看来, MPMediaItemPropertyAssetUrl 是正确的选择。如果我是正确的,设置媒体选择器的代码如下所示:

let mediaPicker = MPMediaPickerController(mediaTypes: .music)
mediaPicker.delegate = self
mediaPicker.prompt = "Select song (Icloud songs must be downloaded to use)"
mediaPicker.allowsPickingMultipleItems = false
mediaPicker.showsCloudItems = false
presentViewController(mediaPicker, animated: true, completion: {})

我的困惑是如何添加返回用户 Assets URL 的代码,以便他们可以将其添加到播放按钮?

最佳答案

您需要调用委托(delegate)函数:

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

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

将 mediaItemCollection.items 中的 thisItem 作为 [MPMediaItem] {}

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

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

然后从播放器的 URL 进行播放

关于ios - MPMediaPickerController 和 MPMediaitemPropertyAssetUrl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35207379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com