2009-09-30 4 views
1

У меня есть кнопка, которая запускает mpmovieplayercontroller для воспроизведения некоторого потокового аудио. Когда контроллер работает, все работает так, как ожидалось, и я вижу серый фоновой режим.iphone mpmovieplayercontroller mp3, показывающий черный фон

Однако, когда я останавливаю плеер и снова нажимаю кнопку, я все еще слышу звук, но фон теперь черный. И, если я переключусь на видеопоток, прежде чем играть в mp3, снова появится задний фон.

Означает ли кто-нибудь, как остановить исчезновение фона в фоновом режиме.

Любая помощь очень ценится.

-(IBAction) playmp3 { 
NSString *medialink = @"http://someWebAddress.mp3"; 
self.player = [[[MPMoviePlayerController alloc] initWithContentURL:[NSURL URLWithString:medialink]] autorelease]; 
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(moviePlayerDidFinish:) name:@"MPMoviePlayerPlaybackDidFinishNotification" object:self.player]; 
[self.player play]; 
} 

- (void)moviePlayerDidFinish:(NSNotification *)obj { 
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"MPMoviePlayerPlaybackDidFinishNotification" object:self.player]; 
self.player = nil; 
} 

ответ

1

Нашел ответ, в основном это связано с тем, что игрок не останавливается правильно. Вам необходимо изменить функцию DidFinish на следующее:

- (void)moviePlayerDidFinish:(NSNotification *)obj { 
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"MPMoviePlayerPlaybackDidFinishNotification" object:self.player]; 
self.player.initialPlaybackTime = -1.0; 
[self.player stop]; 
self.player = nil; 
} 
Смежные вопросы