如何在 iOS 的 iPod 库中获取歌曲的文件位置

Posted

技术标签:

【中文标题】如何在 iOS 的 iPod 库中获取歌曲的文件位置【英文标题】:How to get file location of an song in iPod library in iOS 【发布时间】:2016-11-16 05:09:03 【问题描述】:

当用户从 iPod 库中选择音频时,我有 MPMediaItem 的引用。我正在通过使用获得该项目的asset url

     let url = item.valueForProperty(MPMediaItemPropertyAssetURL)

但这并没有给我文件的确切物理位置,而是给我一个 url w.r.t iPod 库。

ipod-library://item/item.mp3?id=1840064795502796074

有没有办法从 iPod 库中获取歌曲的physical url

编辑 - 实际上我想从物理文件中提取 NSData 并将其发送到我的 backend server,所以我需要物理文件 URL 而不是相对 URL

【问题讨论】:

那么您想将音乐库的音乐文件发送到您的服务器吗? 正是......谢谢您的评论 HI Lion 有可能吗?如果可能的话给我一个解决方案。 我不认为这是可能的,因为苹果对音乐有严格的限制!但是,我不确定! 你能提供你的 Skype id 吗?我们正在做这种应用程序。但他们正在访问 iTunes 库:itunes.apple.com/us/app/handy-audio-editor-trim-audio/… 【参考方案1】:

由于版权保护,您只能播放音乐库中的歌曲。您无法访问行音频文件!但是有一些技巧可以帮助你,就像你可以export music一样,因为你可以混合类型的东西,在创建新的编辑文件后,你有你的音乐文件的新副本,你可以发送它我的东西,但不能发送直接从图书馆像你发送照片和视频!你必须先用export session 导出它!

请参考this so post!

你应该参考Apple sample code for that

还有this so post和this tutoria也可能对你有帮助!

【讨论】:

不过很好用。

以上是关于如何在 iOS 的 iPod 库中获取歌曲的文件位置的主要内容,如果未能解决你的问题,请参考以下文章

如何获取 ipod 库中歌曲的大小?

如何使用 AVAssetExportSession 覆盖 iPhone/iPod 库中的歌曲?

iOS 如何从歌曲(ipod 库)中获取音频样本?

快速查找 iPod 库中歌曲的位置?

播放 iPod 库中的歌曲,只有标题

我如何允许用户从他们的 iPod 库中挑选歌曲?