Проблема с AVQueuePlayer и playerItemDidReachEnd

Мое приложение воспроизводит 8 видео (используя AVPlayer), нажав 8 кнопок. После завершения воспроизведения видео проигрыватель закрывается с использованием следующего кода:

-(void)playerItemDidReachEnd:(NSNotification *) notification {
[self dismissViewControllerAnimated:YES completion:nil];
[[NSNotificationCenter defaultCenter] removeObserver:self];

А внутри кнопки действие:

  [[NSNotificationCenter defaultCenter] addObserver:self
  selector:@selector(playerItemDidReachEnd:)
  name:AVPlayerItemDidPlayToEndTimeNotification
  object:_currentItem];

У меня также есть кнопка "Воспроизвести все", где все 8 видео воспроизводятся последовательно с помощью AVQueuePlayer. Когда они закончили играть, игрок закрывается, используя этот код:

 [[NSNotificationCenter defaultCenter] addObserver:self
 selector:@selector(playerItemDidReachEnd:)
 name:AVPlayerItemDidPlayToEndTimeNotification
 object:eightVideoItem];

В целом, все работает нормально, но если вы воспроизводите одно из 8 видео и закрываете его вручную до завершения воспроизведения, а затем нажмите "Воспроизвести все", проигрыватель закрывается после первого видео (но звук следующих видео продолжает воспроизводиться), Это как будто вызывает предыдущие ролики playerItemDidReachEnd!?

0 ответов

Другие вопросы по тегам