YTPlayerView youtube-ios-player-helper暂停不起作用

mrb*_*log 5 youtube video objective-c ios

我在使用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"];

}
Run Code Online (Sandbox Code Playgroud)

我使用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;
    }
}
Run Code Online (Sandbox Code Playgroud)

在Xcode日志中,当我点击"播放"开始视频播放时,我看到:

didChangeToState 4
Run Code Online (Sandbox Code Playgroud)

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

当我点击"暂停"时,我在日志中看不到任何内容(没有didChangeToState触发任何事件 - 我期望的事件是kYTPlayerStatePaused根据YTPlayerView文档).然而几秒钟后,视频再次开始播放,然后我看到两个连续的Started playback日志消息(kYTPlayerStatePlaying事件).每次按"暂停"尝试暂停视频时,它会暂停几秒钟(没有任何kYTPlayerStatePaused事件),但随后它再次开始播放,我看到了 Started playback日志消息.

其他人看到这个?有谁知道从哪里去?这是Xcode 6.2,构建目标是iOS 8.0.

mrb*_*log 9

我在Github问题跟踪器中找到了解决方案.对不起,我想我在之前的研究中错过了.

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

YTPlayerView-iframe-player.html,删除或评论下面的代码.

window.setInterval(forcePlay, 5000);
Run Code Online (Sandbox Code Playgroud)

还有另一个建议的修复程序完全取代了YTPlayerView-iframe-player.html文件,但上面似乎对我有用.我担心谷歌自己的基本功能代码从根本上被打破了.