0

AVQueuePlayer在我的应用程序中使用来播放一些媒体。当应用程序处于后台时,我正在尝试使用它MPNowPlayingInfoCenter来显示当前的播放状态。我的问题是播放按钮总是显示,即使媒体正在播放。我正在通过以下代码设置正在播放的信息:

 NSDictionary *songInfo = @{
                           MPMediaItemPropertyTitle: title,
                           MPMediaItemPropertyArtist: artist,
                           MPMediaItemPropertyAlbumTitle: album,
                           MPMediaItemPropertyPlaybackDuration: duration,
                           MPNowPlayingInfoPropertyPlaybackRate: @(1.0f),
                           MPNowPlayingInfoPropertyElapsedPlaybackTime: @(0.0f)
                           };

[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];

正如您从以下屏幕截图中看到的那样,显示了播放按钮,我希望在其中看到暂停按钮。在此处输入图像描述

如果它是相关的,我将AVAudioSession类别设置为AVAudioSessionCategoryPlayback.

NSError *sessionError = nil;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback
                                       error:&sessionError];
[[AVAudioSession sharedInstance] setActive: YES error: NULL];
4

1 回答 1

0

可能有点反直觉,但为了设置播放按钮状态,并开始经过时间递增,请执行以下操作:

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
于 2014-12-15T11:18:24.110 回答