YTPlayerView youtube-ios-player-helper pause не работает

У меня проблемы с библиотекой Youtube youtube-ios-player-helper. Я могу загрузить видео в плеер и играть, но если я коснусь паузы, видео остановится на несколько секунд, а затем снова начнет воспроизведение.

Невероятно простой код UIViewController для запуска видео:

- (void)viewDidLoad { [super viewDidLoad]; self.player = [[YTPlayerView alloc] initWithFrame:CGRectMake(X, Y, WIDTH, HEIGHT)]; self.player.delegate = self; [self.view addSubview:self.player]; [self.player loadWithVideoId:@"bQCjOm4p5jM"]; } 

Я измерил метод делегирования didChangeToState с помощью NSLog следующим образом:

 - (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state { switch (state) { case kYTPlayerStatePlaying: NSLog(@"Started playback"); break; case kYTPlayerStatePaused: NSLog(@"Paused playback"); break; default: NSLog(@"didChangeToState %d", state); break; } } 

В журнале Xcode, когда я нажимаю «играть», чтобы начать воспроизведение видео, я вижу:

 didChangeToState 4 

Значение 4, как представляется, не определено в YTPlayerView.m . Когда видео действительно начинает воспроизводиться, я вижу ожидаемое Started playback сообщение журнала Started playback .

Когда я нажимаю «пауза», я ничего не вижу в журнале (событие didChangeToState не срабатывало – событие, которое я ожидаю, будет kYTPlayerStatePaused для документов YTPlayerView). Однако через несколько секунд видео снова начнет воспроизводиться, а затем я увижу два последовательных сообщения журнала Started playback (события kYTPlayerStatePlaying ). Каждый раз, когда я нажимаю «пауза», чтобы попытаться приостановить видео, он приостанавливается на несколько секунд (без события kYTPlayerStatePaused ), но затем он снова начинает воспроизводиться, и я вижу Started playback сообщения журнала Started playback .

Кто-нибудь еще видел это? Кто-нибудь знает, куда идти отсюда? Это Xcode 6.2, а цель сборки – iOS 8.0.

Я нашел решение здесь для отслеживания ошибок Github для кода. Извините, мне кажется, я пропустил это в своих предыдущих исследованиях.

Описанное исправление находится здесь: https://github.com/youtube/youtube-ios-player-helper/issues/86

В YTPlayerView-iframe-player.html удалите или прокомментируйте код ниже.

 window.setInterval(forcePlay, 5000); 

Есть еще одно рекомендуемое исправление, которое полностью заменяет YTPlayerView-iframe-player.html но, похоже, это работает для меня. Это касается меня, что собственный код Google для этой основной функции настолько принципиально нарушен.

Interesting Posts
Давайте будем гением компьютера.