2010-06-28 17 views
5

Ho sviluppato un'applicazione universale che funziona su IPad e IPhone. Sto usando un componente di MPMoviePlayerController in questo.iOS 4 + MPMoviePlayerController

ora viene rilasciato iOS4, Oggi ho ricevuto una brutta notizia sul rifiuto della mia applicazione a causa di questo crash MPMoviePlayerController.

iDemoPlayer= [[MPMoviePlayerController alloc] initWithContentURL:aUrl]; 
[iDemoPlayer play]; 

Questo è il mio codice src per la riproduzione del video.

in iPhone OS 4.0 versione ho trovato che

"If you link a Universal application against iPhone SDK 3.2, you must be prepared to embed the movie player view in your interface when running on iOS 4 and later"

rif

http://developer.apple.com/iphone/library/releasenotes/General/RN-iPhoneSDK-4_0/index.html

può voi ragazzi mi aiuta, cos'altro updation ho bisogno di fare in modo che esso sarà accettato ancora una volta! !!!!!

Grazie,

Sagar

risposta

5

Ugh, Symbian convenzioni di denominazione delle variabili.

if ([MPMoviePlayerController instancesRespondToSelector:@selector(view)]) { 
    // Running on 3.2+ 
    iDemoPlayer2 = [[MPMoviePlayerViewController alloc] initWithContentURL:aUrl]; 
    // Assuming self is a UIViewController 
    [self presentMoviePlayerViewControllerAnimated:iDemoPlayer2]; 
    // This line might be needed 
    [self.moviePlayer play]; 
} else { 
    iDemoPlayer= [[MPMoviePlayerController alloc] initWithContentURL:aUrl]; 
    [iDemoPlayer play]; 
} 
2

Se si desidera continuare a utilizzare un lettore schermo intero come eri prima di OS 4.0, modificare il codice come segue. Probabilmente in precedenza avuto due linee che sembravano:

MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:someURL]; 
[moviePlayer play];

è ora necessario una visione in cui collocare il giocatore di film. Stiamo assumendo questo è in un UIViewController e abbiamo usato self.view di seguito:

MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:someURL]; 

if ([moviePlayer respondsToSelector:@selector(view)]) { 
    moviePlayer.controlStyle = MPMovieControlStyleFullscreen; 
    [moviePlayer.view setFrame:self.view.bounds]; 
    [self.view addSubview:moviePlayer.view]; 
} 

[moviePlayer play];

tuo lettore video dovrebbe ora continuare a comportarsi in modo simile a OS 4.0 e versioni precedenti.

+0

getta questo errore: - [MPMoviePlayerControllerOld setControlStyle:]: selettore non riconosciuto inviato ad esempio 0x8029340' –

+0

getta lo stesso errore per me :(la prego di fornire ulteriori informazioni su di esso? – Sindico

Problemi correlati