我可以從PlaylistItems獲取視頻ID並使用youtube播放器播放它們。但是有沒有什麼辦法可以讓整個播放列表播放(在YouTube上播放一個又一個視頻)。 YouTube上任意播放列表我們有像從yoututbe數據api播放播放列表的所有視頻
https://www.youtube.com/watch?v=zqpkt80WbX0&list=RDaPevLsjcJ7c&index=6
URL我們如何得到「名單」的任何視頻?
我可以從PlaylistItems獲取視頻ID並使用youtube播放器播放它們。但是有沒有什麼辦法可以讓整個播放列表播放(在YouTube上播放一個又一個視頻)。 YouTube上任意播放列表我們有像從yoututbe數據api播放播放列表的所有視頻
https://www.youtube.com/watch?v=zqpkt80WbX0&list=RDaPevLsjcJ7c&index=6
URL我們如何得到「名單」的任何視頻?
我用下面的意圖,其實現方法具
Intent videoint = YouTubeStandalonePlayer.createPlaylistIntent(MyActivity.this, KEY,
playlistID, position, 0, true, false);
startActivityForResult(videoint,STANDALONE_PLAYER_REQUEST_CODE);
你是在一個錯誤的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
還有更多的問題..
我假設你已經擁有的播放列表ID?所以,如果你只是想使用iframe嵌入,可以設置iframe的來源看播放列表,像這樣:
<iframe width="560" height="315" src="http://www.youtube.com/embed?listType=playlist&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&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' },
});
}
正好嵌入可能是解。謝謝。我在android上做。無論如何..你真棒。 :) –
我很抱歉...沒有意識到你在Android上。您是使用網絡視圖還是YouTube PlayerView?如果是後者,應該還有一個loadPlaylist()方法讓你利用它來管理所有的播放列表交互(並且引發許多優秀的播放列表事件供你使用)。 – jlmcdonald