Проблема с 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!?