如何在 ios 应用程序的 MPMusicPlayerController 中获取当前正在播放的歌曲数据 [关闭]

Posted

技术标签:

【中文标题】如何在 ios 应用程序的 MPMusicPlayerController 中获取当前正在播放的歌曲数据 [关闭]【英文标题】:How can I get the Current Playing Song Data in MPMusicPlayerController in ios app [closed] 【发布时间】:2013-06-06 12:13:38 【问题描述】:

我正在处理在 MPMusicPlayerController 中播放的歌曲,现在我想获取当前正在播放的歌曲数据(例如:some.mp3)

请帮助我,在此先感谢

【问题讨论】:

【参考方案1】:

试试这个

@property (nonatomic, retain) MPMusicPlayerController *musicPlayer;
@property (nonatomic, retain) IBOutlet UILabel *songLabel;
@property (nonatomic, retain) IBOutlet UILabel *artistLabel;
@property (nonatomic, retain) IBOutlet UILabel *albumLabel;


- (void)handleNowPlayingItemChanged:(id)notification 

// Ask the music player for the current song.
MPMediaItem *currentItem = self.musicPlayer.nowPlayingItem;

// Display the artist, album, and song name for the now-playing media item.
// These are all UILabels.
 self.songLabel.text   = [currentItem valueForProperty:MPMediaItemPropertyTitle];
 self.artistLabel.text = [currentItem valueForProperty:MPMediaItemPropertyArtist];
 self.albumLabel.text  = [currentItem valueForProperty:MPMediaItemPropertyAlbumTitle];    
 // Display album artwork. self.artworkImageView is a UIImageView.
 CGSize artworkImageViewSize = self.artworkImageView.bounds.size;
 MPMediaItemArtwork *artwork = [currentItem valueForProperty:MPMediaItemPropertyArtwork];
 if (artwork != nil) 
 
      self.artworkImageView.image = [artwork imageWithSize:artworkImageViewSize];
    
else

        self.artworkImageView.image = nil;


【讨论】:

有没有办法检查这句话是真的在播放还是暂停了? @NoSixties 你可以使用 MPMusicPlayerController 的“playbackState”来检查它【参考方案2】:

您可以向 MPMusicPlayerController 询问当前正在播放的歌曲

MPMediaItem  *songItem = [controller nowPlayingItem];

然后提取文件(如在 mp3 中)有2 options。查看前 2 个答案。

【讨论】:

以上是关于如何在 ios 应用程序的 MPMusicPlayerController 中获取当前正在播放的歌曲数据 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 应用中管理帐户?

gboard 应用程序如何在 iOS 中运行?

如何在 iOS 混合应用程序中集成 card.io sdk?

如何在 React Native 应用程序的 iOS 后台运行 socket.io?

如何在后台将一个 iOS 应用程序的 NSString 对象的值更改为另一个 iOS 应用程序?

如何在ios设备上打开ios应用程序调试期间创建的txt文件[重复]