我尝试使用youtube视频API播放视频
当我输入静态ID时,表示当时代码正在工作时在文件中声明ID。
但是当我尝试从getIntent()获取ID时,我也获得了ID但视频无法播放。
我知道网络存在问题。
以下是我的代码。它在这种情况下工作。
public String VIDEO = "QqnBjKnwCwE";
youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(DEVELOPER_KEY, Videosshow.this);
@Override
public void onInitializationFailure(Provider provider,
YouTubeInitializationResult error) {
Toast.makeText(this, "Oh no! " + error.toString(), Toast.LENGTH_LONG)
.show();
}
@Override
public void onInitializationSuccess(Provider provider,
YouTubePlayer player, boolean wasRestored) {
player.loadVideo(String.valueOf( VIDEO));
}
现在当我用
时Bundle data = getIntent().getExtras();
VIDEO=data.getString("videourl");
youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(DEVELOPER_KEY, Videosshow.this);
无法正常工作我遇到400网络问题错误
答案 0 :(得分:1)
检查你的身份。我认为id或youtube url中有空格开头或结尾。我有类似的问题并由此解决。你也应该试试。如果你已经正确安装,可能会有帮助。
答案 1 :(得分:1)
我发现我发送的ID不正确,它有一个额外的=(例如= hdeFZ6nt9tc),不会被发送。当我从youtube的实际网址(例如https://www.youtube.com/watch?v=hdeFZ6nt9tc)中提取问题时,问题就出现了。我希望即使你也可能发错了。 即使您非常确定,也请再次仔细检查。 我认为youtube必须发送404(通常是指网页上的“找不到网页”)以获取此类请求。
答案 2 :(得分:0)
我遇到了同样的问题但是从网址检索视频ID解决了我的问题。
String video_id=jsonObject.getString("id");
谢谢你的礼物。