【问题标题】:LoadPlaylistByVideos method doesn't work for "youtube-ios-player-helper"LoadPlaylistByVideos 方法不适用于“youtube-ios-player-helper”
【发布时间】:2016-10-29 14:57:02
【问题描述】:

iOS(XCode / ObjC)中的“youtube-ios-player-helper”有问题,即使用 loadPlaylistByVideos 方法。当我使用代码时

[self.playerView loadWithVideoId:self.youtubeId];

一切正常。 但是当我使用代码时:

NSArray* videosArray = [[NSArray alloc] initWithObjects:@"xwtdhWltSIg", @"6Ejga4kJUts",NULL]; 
[self.playerView loadPlaylistByVideos:videosArray index:0 startSeconds:0 suggestedQuality:kYTPlaybackQualityMedium];

什么都没有发生。我没有收到任何错误,但未创建播放列表并且我看到空白屏幕。

有人可以帮我解决这个问题吗?

提前致谢。

【问题讨论】:

  • 我认为link 会帮助你
  • 我看过这个链接,但这不起作用。
  • 我可以看看你的游戏变量吗?
  • 我没有游戏变量。 playvars 没有问题。无论我尝试什么,屏幕都是空的。
  • 这可能是问题所在,我在使用 playvars 时遇到了同样的问题,它解决了我,对我来说,问题是我在 youtube 中添加的来源解决了我

标签: ios objective-c xcode youtube-api


【解决方案1】:

实际上,这会重新初始化播放器 webview,文档中不建议这样做。 https://developers.google.com/youtube/v3/guides/ios_youtube_helper

我这样解决了: 不要调用 loadPlaylistByVideos(...),而是调用 cuePlaylistByVideos(...) 并将起始索引设置为下一个索引。 (告诉播放器下一部电影应该在您刚开始播放的电影之后播放,以正确初始化。

然后在 didChangeToState 中,实现 .Ended 并调用 [self.playerView nextVideo]

这只会初始化您的 webview 一次并继续播放。

【讨论】:

    【解决方案2】:

    我找到的唯一解决方案是调用

    [self.playerView loadWithVideoId:something]; 
    

    在 viewDidLoad 中然后调用:

    NSArray* videosArray = [[NSArray alloc] initWithObjects:@"xwtdhWltSIg", @"6Ejga4kJUts",NULL]; 
    [self.playerView loadPlaylistByVideos:videosArray index:0 startSeconds:0 suggestedQuality:kYTPlaybackQualityMedium];
    

    在 playerViewDidBecomeReady 中。这是完成这项工作的唯一方法。

    【讨论】:

      猜你喜欢
      • 2017-08-15
      • 2015-08-07
      • 2015-05-31
      • 2016-03-23
      • 2016-04-26
      • 2015-09-16
      • 2020-01-12
      • 2015-12-04
      • 2015-05-23
      相关资源
      最近更新 更多