YTPlayerView youtube-ios-player-helper暂停不工作

我遇到了Youtube youtube-ios-player-helper库的问题。 我可以将video加载到播放器中播放,但如果我点击暂停video停止几秒钟,然后再次开始播放。

令人难以置信的简单UIViewController代码来启动video是:

- (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"]; } 

我使用NSLog检测了didChangeToState委托方法,如下所示:

 - (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日志中,当我点击“播放”开始播放video时,我看到:

 didChangeToState 4 

值4似乎没有在YTPlayerView.m定义。 当video实际开始播放时,我看到预期的Started playback日志消息。

当我点击“暂停”,我没有看到任何日志(没有didChangeToState事件触发 – 我期望的事件将是每YTPlayerView文档kYTPlayerStatePaused )。 但几秒钟后,video又开始播放,然后我看到两个连续的Started playback日志消息( kYTPlayerStatePlaying事件)。 每次按“暂停”试图暂停video,暂停几秒钟(没有kYTPlayerStatePaused事件),但然后再次开始播放,我看到Started playback日志消息。

其他人看到这个? 任何人都知道从哪里去? 这是Xcode 6.2,构build目标是iOS 8.0。

我在代码的Github问题跟踪器中find了一个解决scheme。 对不起,我想我错过了在我以前的研究。

所描述的修复在这里: https : //github.com/youtube/youtube-ios-player-helper/issues/86

YTPlayerView-iframe-player.html ,删除或注释下面的代码。

 window.setInterval(forcePlay, 5000); 

还有一个build议的修复,完全取代了YTPlayerView-iframe-player.html文件,但上述似乎已经为我工作。 它让我担心,Google自己的这个基本function的代码是如此根本地被打破。