iPhone 歌词访问

发布于 2024-11-15 22:17:47 字数 331 浏览 3 评论 0原文

我正在尝试在 iOS 设备上获取一首歌的歌词,我在网络和 stackoverflow 上找到的示例显示获取歌曲的 MPMediaItem(即使用 [MPMediaQueryongsQuery] 并以 MPMediaItemPropertyPersistentID 作为谓词),然后检索歌词使用:

[mediaItem valueForProperty:MPMediaItemPropertyLyrics]

问题是,只有当您首先在 iPod 音乐应用程序中打开歌曲并查看歌词时,这才有效。即使您下次同步时这样做,它也可能会再次停止工作。

我们怎样才能可靠地访问歌词?

I'm trying to get the lyrics for a song on an iOS device and the examples I've found on the web and stackoverflow show getting the song's MPMediaItem (i.e. using a [MPMediaQuery songsQuery] with MPMediaItemPropertyPersistentID as a predicate) and then retrieving the lyrics using:

[mediaItem valueForProperty:MPMediaItemPropertyLyrics]

The problem is that this only works if you first open the song in the iPod music app and view the lyric there. Even if you do that the next time you sync it may stop working again.

How can we get reliable access to lyrics?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

逐鹿 2024-11-22 22:17:47

已解决:以下方法可以解决该问题,并且歌词始终会显示。

NSURL* songURL = [mediaItem valueForProperty:MPMediaItemPropertyAssetURL] 
AVAsset* songAsset = [AVURLAsset URLAssetWithURL:songURL options:nil]; 
NSString* lyrics = [songAsset lyrics];

Solved: The following approach gets around the problem and song lyrics always show up.

NSURL* songURL = [mediaItem valueForProperty:MPMediaItemPropertyAssetURL] 
AVAsset* songAsset = [AVURLAsset URLAssetWithURL:songURL options:nil]; 
NSString* lyrics = [songAsset lyrics];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文