В 3.0 я мог зарегистрироваться на MPMoviePlayerContentPreloadDidFinishNotification
и определить, загружен ли фильм предварительно или нет, в зависимости от того, был ли объект ошибки. Может кто-нибудь сказать мне эквивалент двух корпусов для iOS4?
[ Обновление : Ответ на первый комментарий здесь, поскольку максимальная длина комментария слишком мала.]
Если вы успешно воспроизводите фильм на iOS4, вы получаете:
MPMoviePlayerContentPreloadDidFinishNotification
без объекта ошибки (устарело)
MPMoviePlayerLoadStateDidChangeNotification
и player.loadState=MPMovieLoadStatePlayable
MPMoviePlayerPlaybackDidFinishNotification
и player.loadState=MPMovieLoadStatePlaythroughOK
Если произойдет сбой (например, из-за неверного URL), вы получите:
MPMoviePlayerPlaybackDidFinishNotification
loadState=MPMovieLoadStateUnknown
И это все. Нет MPMoviePlayerContentPreloadDidFinishNotification
с объектом ошибки, как в 3.0, нет MPMoviePlayerLoadStateDidChangeNotification
. Так что это единственный способ обнаружить сбой загрузки для проверки игрока. loadState
для MPMovieLoadStateUnknown
в MPMoviePlayerPlaybackDidFinishNotification
?
Это кажется нелогичным, если не сказать больше.