У меня возникли проблемы с работой MPMoviePlayerController для работы с устройством. Он отлично работает в симуляторе, воспроизводит пятисекундное видео и затем отправляет соответствующий обратный вызов (myMovieFinishedCallback:
) в контроллер просмотра. Когда он запускается на устройстве, фильм никогда не появляется, хотя я могу проследить через [player play]
без проблем. myMovieFinishedCallback:
никогда не вызывается, и ошибок нет. Все нужные ресурсы копируются. Любая идея, что происходит?Почему MPMoviePlayerController работает в симуляторе, но не в устройстве?
Вот код, я использую, чтобы создать и использовать проигрыватель,
Update: Я перешел к использованию MPMoviePlayerViewController. На устройстве фильм все еще не играет, я просто получаю вращающийся прогресс колесо на неопределенный срок. Элементы управления также кратковременно мигают, хотя я установил плеер в MPMovieControlStyleNone - кто-нибудь знает, как я могу это исправить? Фильм составляет пять секунд и около 1,5 МБ, если это имеет значение.
Обновление: Другие файлы фильмов работают, но я не могу понять, как сделать мою работу. Я пробовал это как .mov и .mp4, и настройки кажутся правильными. Любая идея, из-за чего MPMoviePlayer будет показывать колесо прогресса навсегда только на устройстве?
- (void) playMovie
{
NSString *url = [[NSBundle mainBundle]
pathForResource:@"myMovie"
ofType:@"mp4"];
MPMoviePlayerViewController *playerViewController =
[[MPMoviePlayerViewController alloc]
initWithContentURL:[NSURL fileURLWithPath:url]];
playerViewController.moviePlayer.controlStyle = MPMovieControlStyleNone;
playerViewController.moviePlayer.scalingMode = MPMovieScalingModeFill;
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(myMovieFinishedCallback:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:[playerViewController moviePlayer]];
playerViewController.view.frame = movieView.frame;
[movieView addSubview:playerViewController.view];
//---play movie---
MPMoviePlayerController *player = [playerViewController moviePlayer];
[player play];
}
использование MPMoviePlayerViewController – Daniel
Я переключился на MPMoviePlayerViewController. Еще не повезло. – Luke