遠程控制單例對象
// 獲取遠程控制單例對象(用于鎖屏界面的交互)
MPRemoteCommandCenter *rcc=[MPRemoteCommandCenter sharedCommandCenter];
播放,暫停,上下曲,停止
// 播放,暫停,上下曲,停止 的命令 默認:true
// 開啟播放按鈕命令(鎖屏時 或 上拉時 的播放按鈕),添加觸發(fā)調(diào)用方法 (實現(xiàn)調(diào)用方法后 播放音樂時鎖屏界面和上拉界面有所變化)
[rcc.playCommand setEnabled:true];
[rcc.pauseCommand setEnabled:true];
[rcc.previousTrackCommand setEnabled:true];
[rcc.nextTrackCommand setEnabled:true];
[rcc.stopCommand setEnabled:true];
[rcc.playCommand addTarget:self action:@selector(handlePlay:)]; // :(MPRemoteCommand *)command
[rcc.pauseCommand addTarget:self action:@selector(handlePause:)];
[rcc.previousTrackCommand addTarget:self action:@selector(handlePrevious:)];
[rcc.nextTrackCommand addTarget:self action:@selector(handleNext:)];
[rcc.stopCommand addTarget:self action:@selector(handleStop:)];
前進,倒退
// 前進,倒退
[rcc.skipForwardCommand setEnabled:true];
[rcc.skipForwardCommand addTarget:self action:@selector(handleSkipForward:)]; // : (MPSkipIntervalCommandEvent *)skipEvent kipEvent.interval
[rcc.skipForwardCommand setPreferredIntervals:@[@(20)]]; // 設(shè)置快進時間(最大 99)
//
[rcc.skipBackwardCommand setEnabled:true];
[rcc.skipBackwardCommand addTarget:self action:@selector(handleSkipBack:)];
[rcc.skipBackwardCommand setPreferredIntervals:@[@20]]; // 設(shè)置快退時間(最大99)
耳機上的播放按鈕
// 耳機上的播放按鈕命令
[rcc.togglePlayPauseCommand setEnabled:true];
[rcc.togglePlayPauseCommand addTarget:self action:@selector(handlePlayPause:)];
改變播放模式
//
[rcc.changePlaybackRateCommand setEnabled:true];
[rcc.changePlaybackRateCommand setSupportedPlaybackRates:@[@(1),@(1.5),@(2)]];
[rcc.changePlaybackRateCommand addTarget:self action:@selector(handleRate:)]; // :(MPChangePlaybackRateCommand*)rate
評分
// 評分
[rcc.ratingCommand setEnabled:true];
[rcc.ratingCommand setMinimumRating:0.0];
[rcc.ratingCommand setMaximumRating:5.0];
[rcc.ratingCommand addTarget:self action:@selector(handleRate:)]; // :(MPRatingCommand *)commd
反饋按鈕
// 反饋按鈕默認false
// 添加喜歡按鈕
[rcc.likeCommand setEnabled:true];
[rcc.likeCommand addTarget:self action:@selector(handleLike:)]; // : (MPFeedbackCommandEvent *)feedbackEvent
[rcc.likeCommand setLocalizedTitle:@"喜歡"];
// 添加不喜歡按鈕
[rcc.dislikeCommand setEnabled:true];
[rcc.dislikeCommand addTarget:self action:@selector(handleDisLike:)];
[rcc.dislikeCommand setLocalizedTitle:@"不喜歡"];
// 標簽
[rcc.bookmarkCommand setEnabled:true];
[rcc.bookmarkCommand addTarget:self action:@selector(handleBookMark:)];
[rcc.bookmarkCommand setLocalizedTitle:@"book"];
顯示信息
// 顯示信息單例
MPNowPlayingInfoCenter *infoCenter=[MPNowPlayingInfoCenter defaultCenter];
// 鎖屏界面圖片
MPMediaItemArtwork *work=[[MPMediaItemArtwork alloc]initWithImage:[UIImage imageNamed:@""]];
// 信息
infoCenter.nowPlayingInfo=@{
MPMediaItemPropertyTitle:@"title",
MPMediaItemPropertyArtist:@"作者",
MPMediaItemPropertyAlbumTitle:@"專輯名",
MPMediaItemPropertyPlaybackDuration:@100, // 歌曲時長
MPNowPlayingInfoPropertyElapsedPlaybackTime:@(100), // 當前播放時間
MPMediaItemPropertyArtwork:[[MPMediaItemArtwork alloc]initWithImage:[UIImage imageNamed:@""]], // 歌曲插圖
};