6

我正在开发一个音乐播放应用程序,在以前的 iOS 版本中,媒体播放器会显示播放/暂停以及跳过和上一个按钮。现在,随着 8.4 更新,显示的只是播放/暂停。我正在以通常的方式更新 MPNowPlayingInfoCenter:

NSDictionary* nowPlayingInfo = @{
    MPMediaItemPropertyTitle:[self.currentSong title],
    MPMediaItemPropertyArtist:[self.currentSong artist],
    MPMediaItemPropertyPlaybackDuration:[NSNumber numberWithDouble:(double) self.duration],
    MPNowPlayingInfoPropertyElapsedPlaybackTime: [NSNumber numberWithDouble:(double)self.currentPlaybackTime],
    MPNowPlayingInfoPropertyPlaybackRate: self.isPlaying ? @1.0 : @0.0,
    MPMediaItemPropertyArtwork: mediaPlayerArtwork,
    MPNowPlayingInfoPropertyPlaybackQueueIndex: [NSNumber numberWithInteger:playQueue.queuePosition],
    MPNowPlayingInfoPropertyPlaybackQueueCount: [NSNumber numberWithInteger:playQueue.queueIDs.count] };
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:nowPlayingInfo];

但结果是…… 在此处输入图像描述

在此处输入图像描述

谢谢你的帮助!

4

1 回答 1

5

为了获得下一个和上一个按钮,您需要添加:

[[MPRemoteCommandCenter sharedCommandCenter].nextTrackCommand addTarget:self action:@selector(remoteNextPrevTrackCommandReceived:)];
[[MPRemoteCommandCenter sharedCommandCenter].previousTrackCommand addTarget:self action:@selector(remoteNextPrevTrackCommandReceived:)];

我在 AppDelegate 中添加了这个

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

如果您已经收到远程事件,则操作方法可以为空:

-(void) remoteNextPrevTrackCommandReceived:(id)event {}

于 2015-07-10T00:05:43.707 回答