最近做了一个音乐播放器,要求后台可以播放,并且 在控制中心可以操控播放器。我们都知道,想要在控制中心显示音乐信息,需要这样设置:
NSMutableDictionary *dict =[[NSMutableDictionary alloc] init];
//设置歌曲题目
[dict setObject: @"歌曲题目" forKey:MPMediaItemPropertyTitle];
//设置歌手名
[dict setObject:@"歌手名" forKey:MPMediaItemPropertyArtist];
//设置专辑名
[dict setObject:@"专辑名" forKey:MPMediaItemPropertyAlbumTitle];
//设置显示的图片
[dict setObject:[[MPMediaItemArtwork alloc] initWithImage:图片] forKey:MPMediaItemPropertyArtwork];
//设置歌曲时长
[dict setObject:[NSNumber numberWithDouble:音乐总时长] forKey:MPMediaItemPropertyPlaybackDuration];
//设置已经播放时长
[dict setObject:[NSNumber numberWithDouble:已经播放的时长] forKey:MPNowPlayingInfoPropertyElapsedPlaybackTime];
//更新字典
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:dict];
接下来的一个动作是:当我把这个小播放器先暂停后隐藏视图的时候(不是销毁视图),这时候,控制中心的音乐界面不消失。我们产品要求消失,就需要代码关闭控制中心的音乐界面:
/// 清空数据便会自动消失 over
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:@{}];
网友评论