Есть ли способ перехвата исключений (особенно для сетевых ошибок/отсутствия соединения) при использовании MPMoviePlayerController?
Меня особенно беспокоит то, что после инициализации экземпляра проигрывателя с помощью initWithURL:
у вас нет возможности узнать, произошла ли ошибка загрузки фильма по какой-либо причине.
Я просмотрел доступную документацию и понял, что могу получать уведомления об изменениях loadState через
moviePlayerLoadStateChanged:(NSNotification*)notification.
Проблема в том, что доступные константы loadState не предназначены для обработки ошибок:
MPMovieLoadStateUnknown
MPMovieLoadStatePlayable
MPMovieLoadStatePlaythroughOK
MPMovieLoadStateStalled
(если вам интересно, MPMovieLoadStateStalled по какой-то причине не вызывается во время сетевых ошибок?)
Существует устаревший MPMoviePlayerContentPreloadDidFinishNotification
, который предоставляет словарь userInfo с ключом «ошибка», но ничего для iOS 3.2 и выше.
Любая помощь будет очень высоко ценится.