android 播放 优酷视频

一、注册优酷开放平台账号


二、创建应用,获取 client_id client_secret


三、播放器代码讲解(详见URLhttp://open.youku.com/tools

提示:ie下要有<html/><body/>才能显示正常
如果播放器不能显示,请给播放器外层<div/>增加宽度和高度样式

<div id="youkuplayer" style="width:480px;height:400px"></div>
<script type="text/javascript" src="http://player.youku.com/jsapi">
    player = new YKU.Player('youkuplayer',{
        styleid: '0',
        client_id: '替换成应用ID',
        vid: '替换成优酷视频ID',
        autoplay: true,
        show_related: true,
        embsig: 'VERSION_TIMESTAMP_SIGNATURE',
        events:{
            onPlayEnd: function(){ /*your code*/ }
        }
    });
    function playVideo(){
        player.playVideo();
    }
</script>

1、div标签中的id对应着javascript中Player()的第一个参数

2、div的宽高可以使像素值,也可以是百分比

3、Player()中前三个属性必填

  a.styleid为播放器样式,可在URL中进行设置

  b.client_id见上

  c.vid为视频ID,可在优酷网也的地址栏找到

4、选填项

  a.autoplay:是否自动播放视频

  b.show_related:播放完后是否显示相关视频

  c.embsig:客户端(非网站)应用参数设置(非网站类应用必须设置此项)

ps:貌似embsig不写也无所谓(笑)之后还会专门讲这个参数的设置

  d.events:事件回调: onPlayerReady播放器准备就绪调用;        onPlayStart播放器开始播放时调用;        onPlayEnd播放器结束播放时调用;

  e.播放器控制接口:
            void playVideo()播放
            void pauseVideo()暂停
            void seekTo(int seconds)定位至指定时间
            float currentTime()当前播放时间

5、embsig讲解

  embsig生成规则说明: 
  embsig组成结构: "VERSION_TIMESTAMP_SIGNATURE" 
  VERSION 1 
  TIMESTAMP 为 UNIX stamp 
  SIGNATURE 为 md5(VID_TIMESTAMP_CLIENT-SECRET),
  *切记一定要在移动客户端中生成再传给页面,避免泄漏
  CLIENT_SECRET 生成后的 embsig 在 TIMESTAMP 5分钟以内有效

6、java中MD5的算法

public static void main(String[] args) throws Exception
{
    MessageDigest md5 = MessageDigest.getInstance("MD5");
    String password = "wodemima";
    byte[] bytes = md5.digest(password.getBytes());
    String result = "";
    for(byte b : bytes)
    {
        String temp = Integer.toHexString(b & 0xff);
        if(temp.length() == 1)
        {
            temp = "0" + temp;
        }
        result = result + temp;
    }
    System.out.println(result);
}

7、java中UNIX stamp的算法

  a.long stamp=System.currentTimeMillis() / 1000;

  b.long stamp=new Date().getTime()/10000;

ps:不知是否正确,求大牛指教


四、android在webView中载入html

1、网络权限(不多描述)

2、初始化WebView

WebSettings settings = myWebView.getSettings();
//WebView启用Javascript脚本执行
settings.setJavaScriptEnabled(true);//是否允许javascript脚本
settings.setJavaScriptCanOpenWindowsAutomatically(true);//是否允许页面弹窗

3、加载html 

String html="播放器代码";
myWebView.loadData(html, "text/html; charset=UTF-8", null);


暂时先这样了,亲测哦!

tip:附一个算unix timestamp的网址

http://tool.chinaz.com/Tools/unixtime.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值