【问题标题】:Displaying Youtube Videos From Specific Channel显示来自特定频道的 Youtube 视频
【发布时间】:2014-10-25 18:32:03
【问题描述】:

我创建了一个 youtube 频道并在那里上传了一些视频。频道是公开的,现在我想通过频道 URL 在我的 android 应用中显示所有上传的视频:https://www.youtube.com/channel/UCjD0Dhs3o7UiUQdZpSBADAA

我也做了一些研究,但我得到了通过硬编码而不是来自频道的 id 显示视频的教程,例如:https://github.com/youtube/yt-android-player

任何人指导我这可能吗?我真的很感谢你在这件事上的帮助。

谢谢!

【问题讨论】:

标签: android youtube-api


【解决方案1】:

它对我来说很好用。您可以参考此答案以在网站中显示 youtube 频道视频:

$(document).ready(function () {
	youtubeApiCall();

	$("#pageTokenNext").on("click", function (event) {
		event.stopImmediatePropagation();
		$("#pageToken").val($("#pageTokenNext").val());
		youtubeApiCall();
	});

	$("#pageTokenPrev").on("click", function (event) {
		event.stopImmediatePropagation();
		$("#pageToken").val($("#pageTokenPrev").val());
		youtubeApiCall();
	});
});

// Get Uploads Playlist
function youtubeApiCall() {
	$.get(
		"https://www.googleapis.com/youtube/v3/channels", {
			part: 'contentDetails',
            forUsername: 'bharatpillai007',
			//id: {YOUTUBE CHANNEL ID}, //or you can call forUsername: {USER NAME} parameter of the your youtube channel
			key: 'AIzaSyCKCyYrVLEKR7VR4BFlrC5AhhzYQGRIet4'
		}, function (data) {

			$.each(data.items, function (i, item) {
				pid = item.contentDetails.relatedPlaylists.uploads;
				getVids(pid);
			});
		}
	);
}

//Get Videos
function getVids(pid) {
	$.get(
		"https://www.googleapis.com/youtube/v3/playlistItems", {
			part: 'snippet',
			maxResults: 10, // Defualt 5. You can set 1 to 50
			playlistId: pid,
			key: 'AIzaSyCKCyYrVLEKR7VR4BFlrC5AhhzYQGRIet4',
			pageToken: $("#pageToken").val()
		}, function (data) {
			var results;
			$.each(data.items, function (i, item) {
				if (typeof data.prevPageToken === "undefined") {
					$("#pageTokenPrev").hide();
				} else {
					$("#pageTokenPrev").show();
				}
				if (typeof data.nextPageToken === "undefined") {
					$("#pageTokenNext").hide();
				} else {
					$("#pageTokenNext").show();
				}
				
				$("#pageTokenNext").val(data.nextPageToken);
				$("#pageTokenPrev").val(data.prevPageToken);

				results = '<li>' + item.snippet.title + '</li>';
				$('#results').append(results);
			});
		}
	);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row-fluid">                
	<ul id="results"></ul>

	<input type="hidden" id="pageToken" value="" />
	<div class="btn-group" role="group" aria-label="...">
		<button type="button" id="pageTokenPrev" value="" class="btn btn-default">Prev</button>
		<button type="button" id="pageTokenNext" value="" class="btn btn-default">Next</button>
	</div>
</div>

【讨论】:

    【解决方案2】:

    在阅读了不同的 Youtube api 之后,我发现以下步骤可以在您的 Android 应用中使用 Youtube 频道视频。

    1) 在您的 Google 帐户中创建一个应用程序 2) 启用 youtube 服务 3)然后您将获得开发者密钥

    使用该开发者密钥进行 api 调用。

    4)

    String url = "https://www.googleapis.com/youtube/v3/channels?part=snippet%2CcontentDetails%2Cstatistics&id=UCjD0Dhs3o7UiUQdZpSBADAA&key=" + DeveloperKey.DEVELOPER_KEY;
    

    使用上述 URL 中的频道 ID 和开发者密钥来获取您频道下的视频列表。

    5) 您将获得每个视频的基本信息,但您仍然无法在您的 android 视频播放器中播放该视频,您必须拥有 RTSP url

    您可以通过将视频 ID 传递给 http://gdata.youtube.com/feeds/mobile/videos/1FJHYqE0RDg 来获取该网址

    就是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-20
      • 1970-01-01
      • 2018-02-02
      • 2015-11-03
      • 1970-01-01
      • 1970-01-01
      • 2014-06-06
      • 2018-02-07
      相关资源
      最近更新 更多