鎖屏界面下顯示音頻的信息

以下是效果圖:(該功能需要使用真機才能看到效果)


鎖屏效果

第一步:需要先打開后臺播放,否則在后臺模式下,音樂播放不出


設(shè)置后臺模式

第二步:在AppDelegate中寫入以下代碼:

// 將進(jìn)入后臺
-(void)applicationWillResignActive:(UIApplication *)application
{
  // 接受遠(yuǎn)程控制
  [self becomeFirstResponder];
  [[UIApplication sharedApplication] 
}  

// 將進(jìn)入前臺
-(void)applicationWillEnterForeground:(UIApplication *)application {
    // 取消遠(yuǎn)程控制
    [self resignFirstResponder];
    [[UIApplication sharedApplication] endReceivingRemoteControlEvents];
}

第三步:在AppDelegate中實現(xiàn)鎖屏下音頻界面的操作:

// 鎖屏播放界面的操作事件
- (void)remoteControlReceivedWithEvent:(UIEvent *)event
{
  // 判斷是否為遠(yuǎn)程控制
  if (event.type == UIEventTypeRemoteControl) {  
      NSInteger type = -1;
      switch (event.subtype) {
        case  UIEventSubtypeRemoteControlPlay: // 播放         
                type = UIEventSubtypeRemoteControlPlay;
                break;
        case UIEventSubtypeRemoteControlPause: // 暫停        
                type = UIEventSubtypeRemoteControlPause;
                break;
        case UIEventSubtypeRemoteControlNextTrack: // 下一首
                type = UIEventSubtypeRemoteControlNextTrack;
                break;
        case UIEventSubtypeRemoteControlPreviousTrack: // 上一首
                type = UIEventSubtypeRemoteControlPreviousTrack;
                break;
        default:
                break;
        }
        // 發(fā)送通知入愧,操作音頻
        [[NSNotificationCenter defaultCenter] postNotificationName:@"UIEventSubtype" object:@(type)];
    }
}

第四步:在音頻所在控制器中寫入以下代碼

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor whiteColor];
    [self createNotification];
}

// 創(chuàng)建通知
- (void)createNotification
{
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(notificaitonAction:)
                                                 name:@"UIEventSubtype"
                                               object:nil];
}

// 通知事件(該方法自行按需求實現(xiàn))
- (void)notificaitonAction:(NSNotification *)notification
{
    NSInteger type = [notification.object integerValue];
    switch (type) {
        case  UIEventSubtypeRemoteControlPlay: // 播放
            [_player play];
            break;
        case UIEventSubtypeRemoteControlPause: // 暫停
            [_player pause];
            break;
        case UIEventSubtypeRemoteControlNextTrack: // 下一首
            if (_index == 2) {
                _index = 0;
            }else{
                _index++;
            }
            [self setPlayingInfoWithIndex:_index];
            break;
        case UIEventSubtypeRemoteControlPreviousTrack: // 上一首
            if (_index == 0) {
                _index = 2;
            }else{
                _index--;
            }
            [self setPlayingInfoWithIndex:_index];
            break;
        default:
            break;
    }
}

// 設(shè)置鎖屏?xí)r顯示當(dāng)前播放的音頻信息
- (void)setPlayingInfoWithIndex:(NSInteger)index
{
    NSArray * musics = @[[[NSBundle mainBundle] pathForResource:@"那些花兒" ofType:@".mp3"],
                         [[NSBundle mainBundle] pathForResource:@"夜空中最亮的星" ofType:@".mp3"],
                         [[NSBundle mainBundle] pathForResource:@"紅豆" ofType:@".mp3"]];
    NSArray * musicName = @[@"那些花兒",@"夜空中最亮的星",@"紅豆"];
    NSArray * musicImage = @[[UIImage imageNamed:@"樸樹.jpg"],
                             [UIImage imageNamed:@"逃跑計劃.jpg"],
                             [UIImage imageNamed:@"王菲.jpg"]];
    NSArray * musicArtist = @[@"樸樹",@"逃跑計劃",@"王菲"];
    // 設(shè)置后臺播放
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

    // 初始化播放器
    NSURL *url = [NSURL fileURLWithPath:musics[index]];
    if (_player) {
        [_player pause];
        _player = nil;
    }
    _player = [[AVPlayer alloc] initWithURL:url];
    [_player play];
    _isPlayingNow = YES;

    // 設(shè)置后臺播放時顯示的東西,例如歌曲名字恃轩,圖片
    MPMediaItemArtwork *artWork = [[MPMediaItemArtwork alloc] initWithImage:musicImage[index]];


    NSDictionary *dic = @{MPMediaItemPropertyTitle:musicName[index],      // 歌曲名
                          MPMediaItemPropertyArtist:musicArtist[index],   // 演唱者
                          MPMediaItemPropertyArtwork:artWork              // 海報
                          };
   // 進(jìn)行鎖頻音樂信息設(shè)置
   [[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:dic];
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末锁荔,一起剝皮案震驚了整個濱河市蟀给,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌阳堕,老刑警劉巖跋理,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異恬总,居然都是意外死亡前普,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進(jìn)店門壹堰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拭卿,“玉大人,你說我怎么就攤上這事缀旁〖桥” “怎么了勺鸦?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵并巍,是天一觀的道長。 經(jīng)常有香客問我换途,道長懊渡,這世上最難降的妖魔是什么刽射? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮剃执,結(jié)果婚禮上誓禁,老公的妹妹穿的比我還像新娘。我一直安慰自己肾档,他們只是感情好摹恰,可當(dāng)我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著怒见,像睡著了一般俗慈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上遣耍,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天闺阱,我揣著相機與錄音,去河邊找鬼舵变。 笑死酣溃,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的纪隙。 我是一名探鬼主播赊豌,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼绵咱!你這毒婦竟也來了亿絮?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤麸拄,失蹤者是張志新(化名)和其女友劉穎派昧,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拢切,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡蒂萎,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了淮椰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片五慈。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖主穗,靈堂內(nèi)的尸體忽然破棺而出泻拦,到底是詐尸還是另有隱情,我是刑警寧澤忽媒,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布争拐,位于F島的核電站,受9級特大地震影響晦雨,放射性物質(zhì)發(fā)生泄漏架曹。R本人自食惡果不足惜隘冲,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望绑雄。 院中可真熱鬧展辞,春花似錦、人聲如沸万牺。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽脚粟。三九已至靡砌,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間珊楼,已是汗流浹背通殃。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留厕宗,地道東北人画舌。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像已慢,于是被迫代替她去往敵國和親曲聂。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容