当前位置 : 主页 > 手机开发 > ios >

iOS中关于音乐锁屏控制音乐(锁屏信息设置)的实例

来源:互联网 收集:自由互联 发布时间:2021-05-10
废话不多说了,直接给大家贴代码了,具体代码如下所示: pre name="code" class="objc"appDelegate里面加入如下代码获取后台播放权限/prepre name="code" class="objc"- (void)setAudioBackstagePlay{ AVAudioSess

废话不多说了,直接给大家贴代码了,具体代码如下所示:

 <pre name="code" class="objc">appDelegate里面加入如下代码获取后台播放权限</pre><pre name="code" class="objc">- (void)setAudioBackstagePlay{ 
  AVAudioSession *audioSession = [AVAudioSession sharedInstance]; 
  [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil]; 
  [audioSession setActive:YES error:nil]; 
}</pre> 
<pre></pre> 
<pre name="code" class="objc">//重写父类方法,接受外部事件的处理 
- (void) remoteControlReceivedWithEvent: (UIEvent *) receivedEvent { 
  NSLog(@"remote"); 
  if (receivedEvent.type == UIEventTypeRemoteControl) { 
    switch (receivedEvent.subtype) { // 得到事件类型 
      case UIEventSubtypeRemoteControlTogglePlayPause: // 暂停 ios6 
        [_player musicPause]; // 调用你所在项目的暂停按钮的响应方法 下面的也是如此 
        break; 
      case UIEventSubtypeRemoteControlPreviousTrack: // 上一首 
        [self lastMusic]; 
        break; 
      case UIEventSubtypeRemoteControlNextTrack: // 下一首 
        [self nextMusic]; 
        break; 
      case UIEventSubtypeRemoteControlPlay: //播放 
        [_player musicPlay]; 
        break; 
      case UIEventSubtypeRemoteControlPause: // 暂停 ios7 
        [_player musicPause]; 
        break; 
      default: 
        break; 
    } 
  } 
}</pre><pre name="code" class="objc"><pre name="code" class="objc">- (void)configNowPlayingCenter { 
  NSLog(@"锁屏设置"); 
//   BASE_INFO_FUN(@"配置NowPlayingCenter"); 
  YBVideoListModel * list = _model.audioList[_currentIndexPath.row];</pre><pre name="code" class="objc"><span style="white-space:pre">  </span>//以下代码是加载锁屏显示网络图片以及其他设置 
  [[SDWebImageManager sharedManager] downloadImageWithURL:[NSURL URLWithString:list.thumbUrl] options:SDWebImageRetryFailed progress:nil completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) { 
    if (image == nil) { 
      image = [UIImage imageNamed:@"default_music"]; 
    } 
    NSMutableDictionary * info = [NSMutableDictionary dictionary]; 
    //音乐的标题 
    [info setObject:list.title forKey:MPMediaItemPropertyTitle]; 
    //音乐的艺术家 
    NSString *author= list.singer; 
    [info setObject:author forKey:MPMediaItemPropertyArtist]; 
    //音乐的播放时间 
    [info setObject:@(_player.player.currentTime.value) forKey:MPNowPlayingInfoPropertyElapsedPlaybackTime]; 
    //音乐的播放速度 
    [info setObject:@(1) forKey:MPNowPlayingInfoPropertyPlaybackRate]; 
    //音乐的总时间 
    [info setObject:@(list.duration) forKey:MPMediaItemPropertyPlaybackDuration]; 
    //音乐的封面 
    MPMediaItemArtwork * artwork = [[MPMediaItemArtwork alloc] initWithImage:image]; 
    [info setObject:artwork forKey:MPMediaItemPropertyArtwork]; 
    //完成设置 
    [[MPNowPlayingInfoCenter defaultCenter]setNowPlayingInfo:info]; 
  }]; 
}</pre><br> 
<br> 
<pre></pre> 
<br> 
</pre> 

以上所述是小编给大家介绍的 iOS中关于音乐锁屏控制音乐(锁屏信息设置)的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对自由互联网站的支持!

网友评论