2015-02-04 4 views
0

AVPlayer를 사용하여 URL에서 라이브 사운드를 스트리밍합니다.AVPlayer가있는 URL의 라디오 스트림 -> iPhone 플레이어 컨트롤이 작동하지 않습니다.

내 앱이 백그라운드에서 실행 중이며 스 와이프 업 메뉴에서 iPhone 플레이어를 재생하거나 일시 중지하려는 경우를 제외하고는 완벽하게 작동합니다. 정확한 이름은 모르겠습니다. 볼륨은 작업을 제어하지만 재생/일시 중지 제어는 제어하지 않습니다.

나는 몇 시간 동안 SO와 인터넷을 통해보고 있었고 그것을 이해할 수 없다.

어떤 도움이 필요합니까? 여기

코드입니다 (당신이 더 이상 코드가 필요하면 주저) :

// Set AudioSession 
NSError *sessionError = nil; 
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&sessionError]; 
[[AVAudioSession sharedInstance] setActive:YES error:nil]; 

// Init player 
self.playerItem = [AVPlayerItem playerItemWithURL:url]; 
self.audioPlayer = [AVPlayer playerWithPlayerItem:self.playerItem]; 
[self.audioPlayer play]; 

답변

0

당신은 앱에서 자신을 원격 제어를 구현해야합니다. 이것은 AVPlayer에 의해 처리되지 않습니다.

읽고 싶은 것은 Remote Control Events입니다.

루트 뷰 컨트롤러와 같이 일부 클래스에는 전나무 응답기가 필요합니다. [self becomeFirstResponder]으로 전화하여 이벤트를 수신하고 있는지 확인하십시오. 다음 원격 이벤트에 대한 이벤트 핸들러를 구현하십시오.

- (void)remoteControlReceivedWithEvent:(UIEvent *)receivedEvent { 

    if (receivedEvent.type == UIEventTypeRemoteControl) { 
     switch (receivedEvent.subtype) { 
     case UIEventSubtypeRemoteControlTogglePlayPause: 
      [self playOrStop: nil]; 
      break; 

     case UIEventSubtypeRemoteControlPreviousTrack: 
      [self previousTrack: nil]; 
      break; 

     case UIEventSubtypeRemoteControlNextTrack: 
      [self nextTrack: nil]; 
      break; 

     default: 
      break; 
    } 
} 
+0

완벽한 감사합니다! – aiwis31