Ошибка вращения iPad при использовании MPMoviePlayerViewController
Изменение ориентации устройства iPad или симулятора при воспроизведении видео с помощью MPMoviePlayerViewController приводит к несогласованному состоянию поворота при отключении видеопроигрывателя. Это известная ошибка в iPad SDK 3.2, описанная вhttp://www.openradar.me/8012810
Пример проектаЯ подготовил минимальный пример проекта с использованием шаблона приложения на основе представления из Xcode 3.2.2, используя следующий код для запуска проигрывателя
NSURL *movieUrl = [NSURL URLWithString:@"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"];
MPMoviePlayerViewController *player = [[MPMoviePlayerViewController alloc] initWithContentURL:movieUrl];
[self presentMoviePlayerViewControllerAnimated:player];
[player release];
Код доступен на GitHub по адресуhttp://github.com/adamalex/FullScreenMovie или прямая загрузка с использованиемhttp://github.com/adamalex/FullScreenMovie/zipball/master
Действия по воспроизведениюПолучить проект, используя информацию вышеЗапустите проект с помощью симулятора iPad или устройстваНажмите кнопку, чтобы начать воспроизведение видеоПоверните iPad на 90 градусовЗакрыть видеоОбратите внимание, что UIStatusBar не синхронизирован с пользовательским интерфейсом приложения.ЗадачаЯ связался с Apple, и они подтвердили, что это ошибка, которая расследуется. Я хотел бы обсудить временные обходные пути, которые используют общедоступные API-интерфейсы, безопасные для отправки в App Store. Я также собираюсь открыть кейс для поддержки разработчиков в Apple и сообщу о своем прогрессе.