解决安卓机在微信上播放视频有广告问题

其实这个问题困扰了我好久,初到公司之初就尴尬了,html

还跟公司的几个大牛一块儿探讨过,后来发现连腾讯官方都说“咱们就是这样提供了一个需求知足而已”,因此最终也就不了了之了。html5

但随后视频播放的需求并无减小,反而动不动就说:“动画作不出来?那就放视频吧”...心中草泥马狂奔,也只能舒适提醒,安卓机会有广告的...web

结局不会有任何改变,来吧,canvas 绘画模拟视频播放,掉帧什么的就尽可能减小视频大小吧。canvas

 

而意料以外的,锤子公司出品的 H5(连接) 帮助了我。也是意料以外的,这种方法居然会管用。ide

当初面临的几个问题有:1. 视频播放自动就全屏了。2. 播放完毕须要用户点击退出播放器。3. 播放完毕会显示那种你懂的广告。4. 视频没法自动播放动画

虽然 canvas 视频能避免上述的一部分问题,但要么损画质压缩,要么掉帧严重,你选一个吧...视频

今天所说的解决办法也并不能避免上述全部问题,但可谓是个中规中矩的办法,看看就知道了:htm

<style>
.video-box, .cover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.video-box {
    display: none;
    z-index: -1;
}
.video-box.on {
    z-index: 0;
    display: block;
}
</style>
<div class="cover"></div>
<div class="video-box">
    <video id="example_video_1" src="1.mp4" class="video" width="100%" height="100%" preload x5-video-player-type="h5" x5-video-player-fullscreen="true" webkit-playsinline="true" playsinline="true"></video>
</div>
<script>
var myPlayer = $('#example_video_1')[0];
function PLAY() {
    myPlayer.play();
    $(myPlayer).on("ended", END);
}
function END() {
    $('.video-box').removeClass('on');
}
$('.cover').on('click', function(){
    $('.video-box').addClass('on'); PLAY();
});
</script>

一个是添加 x5-video-player-type 和 playsinline 等  html5 属性,blog

一个是视频盒子的显隐问题,之前用过直接 none 并不行,哪知加个 z-index 反而能够了,很巧妙,很神奇...ip

相关文章
相关标签/搜索