我想将YouTube播放器嵌入到我的网页中,如下所示。Android嵌入式播放器4.3
我遇到的问题是,玩家最初加载并播放了第一个视频,但是当调用.loadVideoById时,播放器会加载视频(视频标题文本更改),但会卡在黑屏上而不是玩。
这只发生在Android上,因为将手机更新为Android 4.3之后,HTML5播放器(包括Chrome和默认浏览器)都已经在4.2版本上正常运行。
它通过使用useragent设置为伪装Android的桌面Chrome工作正常。
我也尝试过其他两款Android手机,并且两者都有完全相同的问题(均为4.3)。我也使用Google Code Playground Example Youtube Player间歇性地获得相同的行为。
如果我连接ADB Chrome远程调试器,我可以看到播放器卡在缓冲状态,尽管按预期正在下载视频片段。
有没有人遇到类似的东西?或者有什么建议?
代码:
<div id="ytwrapper">
<div id="player" >
</div>
</div>
<script type="text/javascript">
var ytplayer;
2.此代码加载iFrame播放器API代码以异步方式。
var tag = document.createElement("script");
tag.src = "http://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName("script")[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
3.这个函数创建API代码下载后(和YouTube播放器)。
function onYouTubeIframeAPIReady()
{
ytplayer = new YT.Player('player', { width: 1280,
height: 720,
videoId: 'M7lc1UVf-VE',
frameborder:0,
events:
{
"onReady": onYouTubePlayerReady,
"onStateChange": onytplayerStateChange,
"onPlaybackQualityChange": onYTQchange,
"onError": onYTError
}
});
}
function loadnextvid()
{
ytplayer.loadVideoById(vids[currentvid],0, vqs[currentvid]);
}
function onYouTubePlayerReady(playerId)
{
loadnextvid();
}
</script>