2016-09-22 88 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

相關問題