2012-12-10 29 views
5

我正试图让HTML5视频在移动设备上播放。他们似乎在最新版本的iOS上运行良好,但我遇到了很多与Android设备不一致的问题。在浏览器中播放HTML5视频 - 适用于大多数Android设备?

我使用的Video.js并聆听缩略图上点击,这反过来替换为HTML5视频元素,并自动播放。下面的代码在Android模拟器上不起作用(点击缩略图什么都不做)。当我在我自己的Droid Razr上尝试时,它开始加载视频,然后浏览器冻结。这发生在本地浏览器浏览器,它告诉我这件事情,原产于设备。

$(".video").live("click", function(e) { 
    e.preventDefault(); 
    $(this).replaceWith("<video id='" + $(this).data("video-id") + "' class='video-js' preoload='auto' width='100%' height='100%' poster='" + $(this).data("video-poster-url") + "'><source type='video/mp4; codecs=\"avc1.42E01E, mp4a.40.2\"' src='" + $(this).data("video-url") + "'></video>"); 

    video = _V_($(this)); 
    video.ready(function() { 
     this.play(); 
     this.requestFullScreen(); 
    }); 
}); 

的HTML结束是:

<video id='fv3530' class='video-js' preoload='auto' width='100%' height='100%' poster='/posters/fv3530.jpg'> 
    <source type='video/mp4; codecs="avc1.42E01E, mp4a.40.2" src='/videos/fv3530.mp4'> 
</video> 

有谁知道为什么会导致Android设备完全冻结了,我能做些什么,使影片在大多数Android设备一直运行?

谢谢!

+0

能否请您确认其中一个答案矿石开始赏金。谢谢。 –

回答

1

取下source声明type属性。这通常会导致Android的问题,特别是旧版本。

你的源声明应该简单地:

<source src='/videos/fv3530.mp4'> 

我有一个small site这对Android的工作HTML5视频(只是测试它在我的HTC Desire运行Android 2.2)。

+0

谢谢!为我工作 –

+0

很高兴有帮助。 –

+0

在我的nexus 7 2013不工作。 –

2

请SE这个问题:HTML5 <video> element on Android

显然,存在使用与Android HTML5视频的可能性,根据http://developer.android.com/about/versions/android-2.0-highlights.html 但也有为了使这项工作的一些严格parameteres(见的问题检查响应)。

在你的情况,这是不容易处理事件与模拟器,尤其是HTML5等,所以你应该使用永诺用于测试的真实设备(真的建议报告)。其中涉及您的手机,它可能不工作的原因是,宇正在使用不支持的视频编解码器。

相关问题