我一个月前开始使用Android API for Android。我正在尝试制作一个可以播放一些视频的Android应用程序,其中包括我上传的视频。通过公共视频,它可以工作。但是通过私人视频,YoutubePlayerView显示:“请登录”。
我无法弄清楚如何登录和播放这些视频,因为YoutubeAndroidPlayerAPI似乎不支持身份验证。
这就是我正在使用的“JurB9k3_Ws4”是我的私人视频ID。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.playerview_demo);
YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(DeveloperKey.DEVELOPER_KEY, new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer,
boolean b) {
youTubePlayer.cueVideo("JurB9k3_Ws4");
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider,
YouTubeInitializationResult youTubeInitializationResult) {
}
});
}
答案 0 :(得分:5)
使用Android Player API无法做到这一点。在设备上播放私有视频的唯一方法是在您的应用中实施WebView,让用户登录其YouTube帐户,然后在仅限特定浏览器会话中播放私有视频。 YouTube建议将视频标记为“不公开”而不是“私有”,以便在移动设备上播放。
this Google Groups post中有关使用嵌入式播放器播放私有视频的详细信息。
在嵌入式播放器中播放私有视频只会在以下情况下有效 您的浏览器中有一个YouTube登录Cookie,对应于 允许观看该视频的帐户。否则,它会 失败。使用Data API进行身份验证与是否无关 您可以在嵌入式播放器中播放视频。
...
没有以编程方式创建登录cookie。用户 实际上必须使用相同的浏览器实例登录YouTube.com 那是使用嵌入,而且不能编写脚本。