2014-07-03 107 views
0

我可以從PlaylistItems獲取視頻ID並使用youtube播放器播放它們。但是有沒有什麼辦法可以讓整個播放列表播放(在YouTube上播放一個又一個視頻)。 YouTube上任意播放列表我們有像從yoututbe數據api播放播放列表的所有視頻

https://www.youtube.com/watch?v=zqpkt80WbX0&list=RDaPevLsjcJ7c&index=6 

URL我們如何得到「名單」的任何視頻?

回答

0

我用下面的意圖,其實現方法具

Intent videoint = YouTubeStandalonePlayer.createPlaylistIntent(MyActivity.this, KEY, 
           playlistID, position, 0, true, false); 
startActivityForResult(videoint,STANDALONE_PLAYER_REQUEST_CODE); 
1

你是在一個錯誤的URL way..your應該是這個樣子:

String URL = "https://gdata.youtube.com/feeds/api/playlists/your_playlist_Id"; 

此之後,你必須分析它。它可以在json和xml中使用。 以JSON播放列表網址爲:

https://gdata.youtube.com/feeds/api/playlists/RDaPevLsjcJ7c?v=2&alt=json 

還有更多的問題..

1

我假設你已經擁有的播放列表ID?所以,如果你只是想使用iframe嵌入,可以設置iframe的來源看播放列表,像這樣:

<iframe width="560" height="315" src="http://www.youtube.com/embed?listType=playlist&amp;list=RDaPevLsjcJ7c" frameborder="0" allowfullscreen></iframe> 

將使用YouTube的嵌入式播放列表播放器,其中頂部左手邊角落爲您提供播放列表控件,媒體欄具有跳過按鈕,自動播放下一個視頻等.IT與您在YouTube.com網站上看到的界面不同,但它仍然不錯。

如果您希望擁有比iframe更多的控制權,則可以使用YouTube播放器API的播放列表功能將其掛接到播放列表中,然後您可以加載新的播放列表喜歡或跟蹤索引。下面是說明了這樣的功能有些樣品例如(只是演示代碼...你想調整到適合您的需要):

<html> 
<head> 
</head> 
<body> 
<iframe id="player" width="560" height="315" src="http://www.youtube.com/embed?listType=playlist&amp;list=RDaPevLsjcJ7c&enablejsapi=1&origin=http://humdev.byu.edu" frameborder="0" allowfullscreen></iframe> 
<script> 
var tag = document.createElement('script'); 
tag.src = "https://www.youtube.com/iframe_api"; 
var firstScriptTag = document.getElementsByTagName('script')[0]; 
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 

var player; 
function onYouTubeIframeAPIReady() { 
    player = new YT.Player('player', { 
    height: '390', 
    width: '640', 
    events: { 
     'onReady': onPlayerReady, 
     'onStateChange': onPlayerStateChange 
    }, 

    }); 
} 

onPlayerReady = function() { 
     player.loadPlaylist('PL028565C616627F50'); 
}; 

onPlayerStateChange = function(evt) { 
     console.log(evt); 
     if (evt.data === YT.PlayerState.PLAYING) { 
       alert(player.getPlaylistIndex()); 
     } 
}; 
</script> 
</body> 
</html> 

(順便說一句,有一點要注意的是,你可以,用'loadPlaylist'方法,傳入一個常規的視頻ID而不是一個播放列表ID ......並且它將製作帶有播放列表播放器界面的單個視頻的播放列表。不知道什麼時候這會有用,但它起作用!)

最後,知道在使用播放器API時,如果您想動態構建自己的播放列表,也可以這樣做,並且仍然使用可嵌入的播放列表播放器;在「播放列表」參數構建您的播放器對象時,這樣只需通過用逗號分隔的videoIDs的名單:

function onYouTubeIframeAPIReady() { 
    var player; 
    player = new YT.Player('player', { 
    videoId: 'M7lc1UVf-VE', 
    playerVars: { 'autoplay': 1, 'playlist': 'yCjJyiqpAuU,GoSq-yZcJ-4' }, 
    }); 
} 
+0

正好嵌入可能是解。謝謝。我在android上做。無論如何..你真棒。 :) –

+0

我很抱歉...沒有意識到你在Android上。您是使用網絡視圖還是YouTube PlayerView?如果是後者,應該還有一個loadPlaylist()方法讓你利用它來管理所有的播放列表交互(並且引發許多優秀的播放列表事件供你使用)。 – jlmcdonald