Я создал пустой проект (iOS) и поместил его в свой viewDidLoad:
NSString *moviePath = [[NSBundle mainBundle] pathForResource:@"Movie" ofType:@"m4v"];
MPMoviePlayerViewController *playerController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL fileURLWithPath:moviePath]];
[self presentMoviePlayerViewControllerAnimated:playerController];
[playerController.moviePlayer play];
Когда приложение запускает все, что я получаю, это белый экран с сообщениями об ошибках в журнале:
<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!
... и ряд строк, посвященных отключению автовоспроизведения. Я особенно не понимаю, что строка о представлении не является частью иерархии, так как это пустой проект "Единственный вид приложения" iOS, а код находится в ViewController.m. Он находится в иерархии представлений.
Я знаю, что сам файл фильма не является проблемой, потому что я получил его от примера кода Apple на MPMoviePlayer. И хотя я (по-видимому) попробовал все, что записано в образце, я просто не мог заставить игрока работать.
Вот еще одна попытка, на этот раз с MPMoviePlayerController (не 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];
Аналогичный результат, с белым экраном и ошибками. Пожалуйста, помогите....