我正在使用AVAudioPlayer
在我的项目。当应用程序进入后台或锁定设备应用程序播放歌曲使用AVAudioPlayer
。
我的问题是,当我下载2首歌,并使用AVAudioPlayer
播放歌曲,并锁定设备,歌曲将播放,但下一步和上一步按钮被禁用。
我尝试使用以下代码启用按钮:
[MPRemoteCommandCenter sharedCommandCenter].previousTrackCommand.enabled = YES;
[MPRemoteCommandCenter sharedCommandCenter].nextTrackCommand.enabled = YES;
并设置波纹管代码:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance] setActive: YES error: nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
并将MPMediaItemArtwork
细节设置为:
MPMediaItemArtwork *albumArt = [[MPMediaItemArtwork alloc] initWithImage:[UIImage imageNamed:@"icon.png"]];
[songInfo setObject:@"song title" forKey:MPMediaItemPropertyTitle];
[songInfo setObject:albumArt forKey:MPMediaItemPropertyArtwork];
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];
我还从应用程序功能启用BackgroundMode
:
- 注意:当我关闭应用程序并再次运行,播放歌曲并锁定设备时,下一个和上一个按钮启用并工作,但第一次不工作。**
那么我的问题是为什么不启用下一个/上一个按钮的第一次?
提前致谢。
3条答案
按热度按时间20jt8wwn1#
你能像下面那样瞄准上一个和下一个目标吗
//或
您的代码看起来很好...!
c0vxltue2#
下面是我在Objective-C中的方法:
j91ykkif3#
这是一个可行的解决方案,最新的Swift ios代码