iOS 8:获取系统音乐播放器播放的歌曲标题

时间:2015-07-17 17:14:18

标签: ios objective-c

我正在尝试获取默认音乐应用当前播放的歌曲的标题。这是方法:

- (NSString*)getSongTitle {
  MPMediaItem *currentSong = [[MPMusicPlayerController systemMusicPlayer] nowPlayingItem];
  _title = [currentSong valueForProperty:@"MPMediaGroupingTitle"];
  NSLog(_title);
  return _title;
}

我在网上看到的所有内容都说这应该是正确的,但_title每次都会被分配nil。有什么想法吗?

顺便说一下,我有@imported MediaPlayer

2 个答案:

答案 0 :(得分:1)

我认为你只是使用了错误的密钥。试试MPMediaItemPropertyTitle。看起来应该是这样的:

- (NSString*)getSongTitle {
  MPMediaItem *currentSong = [[MPMusicPlayerController systemMusicPlayer] nowPlayingItem];
  _title = [currentSong valueForProperty:MPMediaItemPropertyTitle];
  NSLog(_title);
  return _title;
}

答案 1 :(得分:0)

试试这个:

- (NSString*)getSongTitle {
  MPMediaItem *currentSong = [[MPMusicPlayerController systemMusicPlayer] nowPlayingItem];
  _title = currentsong.title;
  NSLog(_title);
  return _title;
}