He creado un proyecto en blanco (IOS) y poner esto en mi viewDidLoad:iOS: Cómo utilizar MPMoviePlayerController
NSString *moviePath = [[NSBundle mainBundle] pathForResource:@"Movie" ofType:@"m4v"];
MPMoviePlayerViewController *playerController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL fileURLWithPath:moviePath]];
[self presentMoviePlayerViewControllerAnimated:playerController];
[playerController.moviePlayer play];
Cuando se inicia la aplicación de todo lo que consigo es una pantalla blanca con mensajes de error en el ingrese:
<Error>: CGContextSaveGState: invalid context 0x0
<Error>: CGContextClipToRect: invalid context 0x0
<Error>: CGContextTranslateCTM: invalid context 0x0
<Error>: CGContextDrawShading: invalid context 0x0
<Error>: CGContextRestoreGState: invalid context 0x0
Warning: Attempt to present <MPMoviePlayerViewController: 0x821e3b0> on <ViewController: 0x863aa40> whose view is not in the window hierarchy!
... y un montón de líneas con respecto a la desactivación de reproducción automática. Especialmente no entiendo la línea sobre la vista que no forma parte de la jerarquía, ya que es un proyecto de iOS "Aplicación de vista única" en blanco y el código está en ViewController.m. ESTÁ en la jerarquía de vista.
Sé con certeza que el archivo de película en sí no es el problema porque lo obtuve del código de muestra de Apple en MPMoviePlayer. Y aunque (aparentemente) intenté todo lo escrito en la muestra, simplemente no pude hacer que el jugador trabajara.
Aquí es otro intento, esta vez con MPMoviePlayerController (no MPMoviePlayerViewController):
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:url];
[player setContentURL:url];
[player setMovieSourceType:MPMovieSourceTypeFile];
[[player view] setFrame:self.view.bounds];
[player view].backgroundColor = [UIColor greenColor];
player.scalingMode = MPMovieScalingModeNone;
player.controlStyle = MPMovieControlModeDefault;
player.backgroundView.backgroundColor = [UIColor whiteColor];
player.repeatMode = MPMovieRepeatModeNone;
[self.view addSubview: [player view]];
[player play];
un resultado similar, con pantalla en blanco y los errores. Por favor, ayuda ....
trate de poner en 'viewDidAppear'. –
Poniéndolo en viewDidAppear resolvió los errores de contexto, gracias, pero todavía no obtengo el reproductor, solo una pantalla en blanco –