1

YouTube APIを介してYouTubeビデオの再生を開始しようとしています。ほとんどのブラウザでは機能しますが、Samsung Galaxy Tab 2 7.0 のデフォルト ブラウザでは機能しません。

ほとんどのブラウザでは、ページが読み込まれるとビデオが自動的に再生されます。

SGT7 では、ビデオのロードが開始され、黒い画面が表示され、左上隅に「フィルム」または「キー」のようなアイコンが表示されます。ユーザー入力には応答しません。

そのデバイスに Firefox をインストールしてみましたが、問題なく動作します。

ここで例を見ることができます: http://ser5.ru/t/yt_api.php

この例のソース コードを以下に示します。ご覧のとおり、API ヘルプの埋め込みコードを使用しています: https://developers.google.com/youtube/iframe_api_reference

質問は、API を介してその特定のブラウザで YouTube ビデオを開始できるか、それとも他の方法を使用する必要があるかということです。

<!doctype html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>

<div id="player"></div>

<script>
(function () {
    var tag = document.createElement('script');
    tag.src = "https://www.youtube.com/iframe_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
})();
function onYouTubeIframeAPIReady () {
    player = new YT.Player('player', {
        height: '390',
        width: '640',
        videoId: 'M7lc1UVf-VE',
        events: {
            'onReady': function () {player.playVideo()}
        }
    });
}
</script>

</body>
</html>
4

2 に答える 2

1

このデバイスと他のデバイスで同じ動作に気付きました

player.playVideo() はビデオを再生しません。意図しないデータ課金を防ぐために、モバイル デバイスでは AutoPlay が許可されていないため、これは設計上意図されているようです。

動画の頭出しを行い、ユーザーが再生を呼び出せるようにする必要があります

player.cueVideoById(videoId);

于 2013-10-21T10:59:15.393 に答える