백그라운드에서 노래를 재생할 AVAudioPlayer가있는 게임의 UIViewController 하위 클래스가 있습니다. 내 viewDidLoad 메서드에는 다음 코드가 있습니다.UIViewController에서 AVAudioPlayer 사용
[super viewDidLoad];
...
[NSTimer scheduledTimerWithInterval: 0.03 target: self selector: @selector(gameLoop) userInfo: nil repeats: YES];
NSString *path = @"path-to-song";
self->audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL: [NSURL fileURLWithPath: path] error: NULL];
audioPlayer.delegate = self;
audioPlayer.numberOfLoops = - 1;
[audioPlayer play];
gameLoop은 게임의 핵심 논리를 포함하는 메서드입니다. 테스트 장치에서 앱을 실행하면 오디오가 재생되지만 화면이 멈추고 gameLoop이 정상적으로 실행되지 않습니다. 모든 AVAudioPlayer 코드를 제거하면 게임이 정상적으로 작동합니다. 내가 인식하지 못하는 문제가 여기에있는 것처럼 보입니다. 어떤 아이디어?
오디오 파일의 형식은 무엇입니까? (그냥 44Mhz AIFF 파일이 아니거나 매우 높은 비트 전송률의 MP3가 아닌지 확인하십시오.) –
왜 다른 점이 있습니까? 오디오가 잘 재생됩니다 ... –