0

Мое приложение динамически выделяет и создает экземпляр класса MPMoviePlayer. Проблема: когда создается второй экземпляр, в то время как первый по-прежнему воспроизводит видео, приложение сбой.dealloc MPMoviePlayer перед созданием нового экземпляра

Error: *** Assertion failure in -[MPMoviePlayerClassNew _moviePlayerDidBecomeActiveNotification:], /SourceCache/MediaPlayer/MobileMusicPlayer-2770.3.5/SDK/MPMoviePlayerClass.m:1385 
Exception: movie player <MPMoviePlayerControllerNew: 0x0000000> has wrong activation state (1) 

В настоящее время я использую @ [email protected] catch для избежания сбоя.

Поскольку он динамически вызывается для создания экземпляра, я не могу удалить из него существующий MPMoviePlayer в классе.

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

+0

Пожалуйста, поделитесь некоторым кодом, чтобы мы могли реально помочь. – Popeye

ответ

0

Я думаю, вы не хотите, чтобы одновременно играли два видео. Вы должны создать менеджера для обработки воспроизведения и перехода из одного файла в другой.

Вы бы создать один экземпляр объекта менеджера видео и создать апи как

-(BOOL)startPlayback:(NSString *)path; 

Менеджером может также обрабатывать вид выходного сигнала и т.д.

Прямо сейчас, вы используете это неправильно ;)

Смежные вопросы