gpt4 book ai didi

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

转载 作者:可可西里 更新时间:2023-11-01 04:23:19 25 4
gpt4 key购买 nike

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

}

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

- (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 日志消息。

当我点击“暂停”时,我在日志中看不到任何内容(没有触发 didChangeToState 事件 - 我期望的事件是 kYTPlayerStatePaused YTPlayer 查看文档)。然而几秒钟后,视频再次开始播放,然后我看到两个连续的 Started playback 日志消息(kYTPlayerStatePlaying 事件)。每次我按“暂停”键尝试暂停视频时,它都会暂停几秒钟(没有 kYTPlayerStatePaused 事件),但随后它会再次开始播放,我会看到 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 文件,但以上似乎对我有用。让我担心的是,谷歌自己的这个基本功能的代码从根本上就被破坏了。

关于ios - YTPlayerView youtube-ios-player-helper 暂停不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29291030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com