0

Android 2.x デバイスでイベントを発生させるのに問題があります。テストの結果、Android 4.x および iOS 5/6 は正常に動作します。しかし、Android 2.x デバイスでは、「終了」イベントを受け取ることもあれば、「開始」イベントを受け取ることもあります。

ブラウザ間の互換性があると書かれていますが、これらの問題に遭遇した人はいますか?

コードの関連部分は次のとおりです

<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link rel="stylesheet" href="http://vjs.zencdn.net/c/video-js.css">
  <script src="http://vjs.zencdn.net/c/video.js"></script>
  <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
</head>
<body>
  <div id="videoplayer" style="margin:0 auto; text-align:center;">
    <video id="video" class="video-js vjs-default-skin" controls autoplay preload="auto" width="300" height="300">
    </video>
  </div>
</body>
</html>

<script>
$(document).ready(function() {    
  _V_("video").ready(function() {

    var thePlayer = this;    
    var startVideo = function() {
            // do stuff
    };

    var endVideo = function() {
            // do stuff
    };
    thePlayer.addEvent("play", startVideo);
    thePlayer.addEvent("ended", endVideo);
  });
});
</script>
4

1 に答える 1

0

私は問題を理解しました。Android 2.2 および 2.3 エミュレーターで再現できました。ビデオの読み込み中にエラーが発生したため、ビデオの再生時に発生するイベントはありませんでした。

問題 (Android 2.x デバイスの場合):

  • HTTPS URL からのリンクを再生しても機能しませんでした。使用していたリンクは、Amazon S3 バケットにリンクされた Amazon Cloudwatch URL でした。URL を HTTP と HTTPS の URL に変更すると、うまくいきました。
  • video 要素の autoplay 属性を削除する必要がありました。理由はわかりませんが、Android 2.x のビデオ プレーヤーはこれを気に入りませんでした。

これらの 2 つの修正を行うと、Android 2.x デバイス (および Android 4.x、iPhone、iPod) でビデオをストリーミングできるようになりました。

于 2013-03-06T21:52:02.340 に答える