获取 MPMediaItem 的 iTunes URL

Posted

技术标签:

【中文标题】获取 MPMediaItem 的 iTunes URL【英文标题】:Get iTunes URL of MPMediaItem 【发布时间】:2014-09-19 00:15:53 【问题描述】:

有没有办法获取MPMediaItem 的 iTunes URL?那么我可以在 iTunes 中打开那首歌吗?

一旦您找到喜欢的歌曲,我希望能够像 Shazam 一样拥有“在 iTunes 中打开这首歌”选项。

谢谢

【问题讨论】:

您咨询过documentation on MPMediaItem吗?它不会跟踪该信息。 【参考方案1】:

MPMediaItem 有一个名为 MPMediaItemPropertyAssetURL 的属性,它应该包含您正在寻找的 URL,至少当您没有离线可用的歌曲时,听起来您没有。

【讨论】:

【参考方案2】:

我也想做同样的事情。我能想到的唯一解决方案是根据MPMediaItem 上的标题、专辑、艺术家等使用iTunes Search API。远非理想,因为结果可能不匹配,但它可以满足我的需求。

【讨论】:

【参考方案3】:

ios 10.3 开始,我们可以从 MPMediaItem 中获取一个名为 PlaybackStoreID 的东西,但是,它有时会返回“0”而不是 iTunes 商店中的真实媒体 ID。

@Marcus Stemple 提到您可以从“MPMediaItemPropertyAssetURL”中获取 url,但不保证会返回。

我认为目前更好的方法可能是使用您从 MPMediaItem 中获得的信息(例如艺术家姓名和曲目名称)来查询 iTunes Search API,然后检索它找到的最壁橱结果。

【讨论】:

以上是关于获取 MPMediaItem 的 iTunes URL的主要内容,如果未能解决你的问题,请参考以下文章

MPMediaItem 到 AVAsset 到 .MP3

如何访问 MPMediaItem 的“排序为”字段?

从 MPMediaItem 播放电影 (iPad/IOS5)

是否可以从 MPMediaItem 中的特定点或时间播放?

是否可以编辑 MPMediaItem 的元数据?

如何在 MPMediaItem 中正确添加音乐编译的谓词