2016-09-22 95 views
2

我在使用Google/YouTube提供的youtube-ios-player-helper窗格自动播放视频时出现问题。这里是我的应用程序的相关部分(的iOS 10,夫特3):使用YouTube v3 API和youtube-ios-player-helper的iOS应用无法自动播放视频

  • 显示视频缩略图作为UIViews与UITapGestureRecognizer一个ChannelVideosViewController,反过来塞格斯到我PlayerViewController并传递从所述API调用的VIDEOID
  • 一个PlayerViewController如下:

    var youtubePlayerView = YTPlayerView() // player for videos 
    var youtubeVideoID = String() // videoId from API passed by ChannelVideosViewController 
    
    override func viewDidLoad() { 
    // ... skipping UI stuff 
    
    view.addSubview(youtubePlayerView) 
    youtubePlayerView.load(withVideoId: youtubeVideoID, playerVars: ["autoplay":1,"modestbranding":1,"showinfo":0,"rel":0]) 
    } 
    

有了助手库上面的代码成功加载视频并播放它们在全屏模式下,当我按下“大红色按钮“,但我想直接进入视图后自动播放视频。有没有办法做到这一点?

  • 来自YouTube docs似乎并没有削减它的iOS。
  • youtubePlayerView.playVideo()在此基础上github自动驾驶仪不与iOS的球员的工作没有做任何事情
+0

嗨!自动播放与您合作吗? –

+0

@Llg嗨!可悲的是,由于其他项目的缘故,我最近得到了一些偏差,但要回答你的问题 - 不是真的;我可以播放视频等,但自动播放仍然不起作用。你有这个解决方案吗?或者你也有同样的问题? – tech4242

+0

@Sadly我有同样的问题:( –

回答

5

顺应YTPlayerViewDelegate协议是这样的:

self.youtubePlayer.delegate = self

现在使用此委托方法来自动播放视频时,播放器准备就绪:

extension ViewController: YTPlayerViewDelegate { 
    func playerViewDidBecomeReady(_ playerView: YTPlayerView) { 
     self.youtubePlayer.playVideo() 
    } 
} 

它的工作原理完全在我的情况。

+0

抱歉,迟到的回复 - 我目前没有在应用程序上工作,但这似乎是一个很酷的解决方案;标记为回答:) – tech4242

+0

没问题...谢谢你接受答案,它肯定会工作:) – atulkhatri

1

,作为一种解决方法试试这个:

(void)playerViewDidBecomeReady:(YTPlayerView *)playerView{ [[NSNotificationCenter defaultCenter] postNotificationName:@"Playback started" object:self]; [self.playerView playVideo]; } 

欲了解更多信息,检查这些主题:

+1

我会试试看..谢谢!!我会尽快回复您 – tech4242

+0

好吧,我试了一下,现在我想到了 - 几天前我偶然发现了这个问题。 'playerViewDidBecomeReady'应该是YTPlayerView的委托方法,但Xcode找不到它。也许他们删除了它?我也不能在没有NSNotification的情况下发布新API的通知。名称和“播放开始”不可用 - 可能是由于缺少YTPlayerView的委托方法。 – tech4242

+0

我不确定他们是否删除它。但是,您可以通过搜索或查找相关问题来仔细检查。 – KENdi

相关问题