如何只返回我的第三方应用程序可以播放的视频?

时间:2018-12-26 05:57:07

标签: android youtube-api youtube-data-api google-play-services

根据this page,将参数videoEmbeddablevideoSyndicated设置为true只能返回可以在标准YouTube网站和应用程序之外播放的视频。

但是,当我提交查询时,例如:https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=15&q=cats&type=video&videoEmbeddable=true&videoSyndicated=true&key={my_api_key},我得到的视频在尝试播放时会返回错误,例如“被阻止显示”。

我猜测内容所有者确实允许在某些第三方服务和站点中播放视频,但仅将其选择的白名单列入白名单。 (否则,我的查询应排除它。)我的问题是如何只返回可以在自定义应用程序中播放的视频?

对于一个特定示例,在上述查询中返回的ID为aB1psgIysBM的视频尝试在使用该URL发起搜索的同一应用程序中播放时,会返回阻止的错误。

编辑:错误的屏幕截图:video unavailabe in YouTube player fragment

此外,我还要补充一点,该错误是在使用官方SDK的Android应用程序中发生的。我意识到在OP中尚不清楚,但可能与此有关。

1 个答案:

答案 0 :(得分:0)

好吧,我相信屏幕截图是用于在播放器启动时进行单独的内容检查(由于缺乏更好的用语),并且我主要是出于受版权保护的音乐原因看它。 YouTube API不会检查或具有该信息(无论出于何种原因)。据我所知,内容检查是内部的,我们无法自行进行内容检查。我希望他们有一天能有所改善。抱歉,我没有更多帮助。