http://blog.csdn.net/conowen/article/details/24027401
/********************************************************************************************
* author:conowen@大钟
* E-mail:conowen@hotmail.com
* http://blog.csdn.net/conowen
* 注:本文为原创,仅作为学习交流使用,转载请标明作者及出处。
********************************************************************************************/
最近在做视频采集相关的软件,需要获得在线视频播放的真正地址。由于每家视频的对外api不一样,而且每家视频的获取方式都不一样,给获取主流视频网站的真正地址带来了一定的麻烦。
随着移动互联网的发展,HTML5技术的迅速普及,现在主流在线视频播放网站都支持Html5点播技术。而且这些视频网站必须遵循HTML5的规范,这就统一了,不会写一种方式,然后用在其他的视频网站又不能工作。
支持HTML5视频的页面都会有一个video标签的。
video标签的规范如下
属性
属性 | 值 | 描述 |
---|---|---|
autoplay | autoplay | 如果出现该属性,则视频在就绪后马上播放。 |
controls | controls | 如果出现该属性,则向用户显示控件,比如播放按钮。 |
height | pixels | 设置视频播放器的高度。 |
loop | loop | 如果出现该属性,则当媒介文件完成播放后再次开始播放。 |
muted | muted | 规定视频的音频输出应该被静音。 |
poster | URL | 规定视频下载时显示的图像,或者在用户点击播放按钮前显示的图像。 |
preload | preload | 如果出现该属性,则视频在页面加载时进行加载,并预备播放。 如果使用 "autoplay",则忽略该属性。 |
src | url | 要播放的视频的 URL。 |
width | pixels | 设置视频播放器的宽度。 |
@来自互联网
实现思路:
通过Android的webview载入页面,
页面载入完毕后,执行JavaScript代码,通过javascript代码调用Android本地代码即可。
Android本地Java执行javascript代码可以直接通过webview的loadurl方法执行。
javascript调用Android本地java代码主要通过WebView.addJavascriptInterface();方法
具体实现过程如下
网页加载完毕之后,就可以直接输出HTML5的真正播放地址了。
需要注意一点的就是。浏览器的UserAgent一定要设置为移动端的浏览器ua,如iphone的,这样才可以伪装,让页面显示出HTML5的video标签。