2014-04-22 2 views
0

에서 재생 유지되지 않습니다, 나는 선수가있다. 내가해야 할 일 : MYAPP-의 Info.plist에서오디오 내 응용 프로그램에서 배경

내 AppDelegate에의 .H에서

:

// Set AudioSession 
    NSError *sessionError = nil; 
    [[AVAudioSession sharedInstance] setDelegate:self]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:&sessionError]; 

    /* Pick any one of them */ 
    // 1. Overriding the output audio route 
    // UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker; 
    // AudioSessionSetProperty(kAudioSessionProperty_OverrideAudioRoute, sizeof(audioRouteOverride), &audioRouteOverride); 

    // 2. Changing the default output audio route 
    UInt32 doChangeDefaultRoute = 1; 
    AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker, sizeof(doChangeDefaultRoute), &doChangeDefaultRoute); 
: 내 AppDelegate에의하는 .m에서

#import <AVFoundation/AVFoundation.h> 
#import <AudioToolbox/AudioToolbox.h> 

불행히도 오디오는 백그라운드에서 계속 재생되지 않습니다. 어떤 아이디어? 또한

NSError *sessionError = nil; 
NSError *activationError = nil; 
[[AVAudioSession sharedInstance] setDelegate:self]; 
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error:&sessionError]; 

내가 이미 백그라운드 모드에서 오디오 및 에어 플레이를 ON 변경 한 볼 수 있지만 사용자가 설정 한

+0

있는 유일한 방법은 현재보기 컨트롤러가 멀리 이동 및 할당 해제 할 때 player'이 해제됩니다'이다. 개체를 다음보기 컨트롤러로 전달하여 플레이어 참조를 유지하십시오. –

+0

applicationDidEnterBackground에서 해당 코드를 추가 해보겠습니다. – nmh

+0

계속 재생하지 않을 것이라고 말하면 배경으로 전환하자마자 또는 현재 노래가 끝났을 때를 의미합니까? 또한, 당신은 시뮬레이터가 아닌 장치에서 테스트하고 있습니까? – MDB983

답변

0

를 추가해보십시오 .. 코드 후

[[AVAudioSession sharedInstance] setActive: YES error: &activationError]; 

.. 응용 프로그램이 백그라운드에서 NO로 실행되지 않습니까? 내가 생각할 수있는

enter image description here