XLPlayer

概述

XLPlayer简介

XLPlayer原生插件封装了迅雷播放器SDK

原生插件接口

open

打开播放器

open({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)原生插件的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;原生插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
    y: 0,   //(可选项)数字类型;原生插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
    w: 320, //(可选项)数字类型;原生插件的宽度;默认:300
    h: 300  //(可选项)数字类型;原生插件的高度;默认:300
}

path:

  • 类型:字符串类型
  • 描述:视频路径,支持网络和本地(fs://和 http://)路径

imagePath:

  • 类型:字符串类型
  • 描述:视频加载时的背景图片路径,支持网络和本地(fs://和widget://)路径

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)原生插件视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:原生插件依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)是否将原生插件视图固定到窗口上(不跟随窗口上下滚动)
  • 默认:true

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{

   status:,  //布尔类型;true || false

}

示例代码

var name = api.require('XLPlayer');
name.open({
          rect:
          {
              x:0,
              y:200,
              w:300,
              h:200
          },
          path:'http://7o50kb.com2.z0.glb.qiniucdn.com/c1.1.mp4',
          imagePath:''
}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

addEventListener

添加监听

addEventListener(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    
   eventType:'openSuccess',
   progress:100  // 仅在eventType为 buff 时回调
}
  • eventType
    • openSuccess 打开成功
    • playComplete 播放完成
    • buff 缓冲

示例代码

var name = api.require('XLPlayer');
name.addEventListener({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

pause

暂停

pause(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   status:,  //布尔类型;true || false
}

示例代码

var name = api.require('XLPlayer');
name.pause({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

play

播放

play(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   status:,  //布尔类型;true || false
}

示例代码

var name = api.require('XLPlayer');
name.play({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

close

关闭播放

close(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   status:,  //布尔类型;true || false
}

示例代码

var name = api.require('XLPlayer');
name.close({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getState

获取当前状态

getState(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    state : , // 数字类型;当前状态
    
          - 0 : read
          - 1 : opening
          - 2 : pausing
          - 3 : paused
          - 4 : playing
          - 5 : play
          - 6 : closeing
          - 100 : error
}

示例代码

var name = api.require('XLPlayer');
name.getState({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getDuration

获取视频时长 getDuration(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    duration : , // 数字类型;视频时长
}

示例代码

var name = api.require('XLPlayer');
name.getDuration({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getPosition

获取当前播放的时间

getPosition(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    position : , // 数字类型;
}

示例代码

var name = api.require('XLPlayer');
name.getPosition({

}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

setPosition

设置播放位置

setPosition(callback(ret))

params

position:

  • 类型:数字类型
  • 描述:时间;ms
  • 默认:0

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status : , // 布尔类型;true || false
}

示例代码

    var name = api.require('XLPlayer');
    name.setPosition({
        position:15000
    }, function(ret) {
        if (ret) {
           api.alert({
            msg: JSON.stringify(ret)
        })
        }
    });

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getVideoWidth

获取视频宽度

getVideoWidth(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    width : , //数字类型;视频宽度
}

示例代码

    var name = api.require('XLPlayer');
    name.getVideoWidth({
        
    }, function(ret) {
        if (ret) {
           api.alert({
            msg: JSON.stringify(ret)
        })
        }
    });

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getVideoHeight

获取视频高度

getVideoHeight(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    height : , //数字类型;视频高度
}

示例代码

    var name = api.require('XLPlayer');
    name.getVideoHeight({
        
    }, function(ret) {
        if (ret) {
           api.alert({
            msg: JSON.stringify(ret)
        })
        }
    });

可用性

Android, iOS系统

可提供的1.0.0及更高版本

getCurrentScreenshot

截屏(仅支持android)

getCurrentScreenshot(callback({params}, ret))

params

path:

  • 类型:字符串
  • 描述:保存路径(仅支持fs://)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status : true //数字类型;是否成功
}

示例代码

    var player = api.require('XLPlayer');
    player.getCurrentScreenshot(function(ret) {
        if (ret) {
           api.alert({
            msg: JSON.stringify(ret)
        })
        }
    });

可用性

Android

可提供的1.0.0及更高版本

resetView

重设播放器窗口

resetView({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)原生插件的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;原生插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:0
    y: 0,   //(可选项)数字类型;原生插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
    w: 320, //(可选项)数字类型;原生插件的宽度;默认:300
    h: 300  //(可选项)数字类型;原生插件的高度;默认:300
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{

   status:,  //布尔类型;true || false

}

示例代码

var name = api.require('XLPlayer');
name.resetView({
          rect:{
              x:0,
              y:200,
              w:300,
              h:200
          }
}, function(ret) {
    if (ret) {
       api.alert({
            msg: JSON.stringify(ret)
        })
    }
});

可用性

Android, iOS系统

可提供的1.0.0及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18