iOS:如何在锁屏界面显示当前播放的歌曲信息?

6
从iOS 5开始,我们可以使用MPNowPlayingInfoCenter在锁屏和多任务栏的多媒体控制中显示信息。我有一个播放本地音频文件的应用程序。我想使用MPNowPlayingInfoCenter在锁屏上显示艺术家名称、专辑和艺术品等信息,但是(据我所知)唯一的方法是使用MPMusicPlayerController并获取nowPlayingItem。问题是MPMusicPlayerController仅用于播放iPod音乐,而不是本地存储的文件。在iOS 5中有没有解决这个问题的方法?
1个回答

16

你可以创建自己的NSDictionary,并将其提供给MPNowPlayingInfoCenter。

NSArray *keys = [NSArray arrayWithObjects:MPMediaItemPropertyAlbumTitle, MPMediaItemPropertyArtist, ..., nil];
NSArray *values = [NSArray arrayWithObjects:@"Album", @"Artist", ..., nil];
NSDictionary *mediaInfo = [NSDictionary dictionaryWithObjects:values forKeys:keys];
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:mediaInfo];

但是我如何获取本地存储的音轨的专辑名称?或者封面艺术品呢? - Alex1987
2
您需要读取本地存储文件的ID3标签。请参见https://dev59.com/u3M_5IYBdhLWcg3ww2Gb - steharro
2
你还需要指定你的应用程序接收远程控制事件: [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; - Antonio R.
不要忘记 #import <MediaPlayer/MediaPlayer.h> - sam_smith

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接