MPMoviePlayerController отправляет «конец фильма достигнут» при изменении URL-адреса

Я пытаюсь получить уведомление от MPMoviePlayerController, когда фильм подошел к концу. Я запускаю плеер во встроенном режиме с локальным файлом.

Как и предполагают в документации, я зарегистрировался в MPMoviePlayerPlaybackDidFinishNotification и проверял, содержит ли ключ MPMovieFinishReason значение intValue MPMovieFinishReasonPlaybackEnded. Работает нормально.

Но я получаю такое же уведомление с MPMovieFinishReasonPlaybackEnded, когда переключаю фильм с помощью свойства contentURL до того, как он фактически достиг своего конца. Итак, я попробовал это решение и проверил, равно ли endPlaybackTime == -1, но это верно в обоих случаях.

Единственный обходной путь, который я нашел до сих пор, - это удалить наблюдателя перед изменением contentURL и затем добавить его снова, но я думаю, что должно быть более элегантное решение?

9
задан Community 23 May 2017 в 01:47
поделиться