floatVideo

来自于:开发者立即使用

概述

悬浮窗口播放视频,能在手机桌面上播放视频,一边看视频一边玩别的。因为播放器用的是系统自带的MediaPlayer播放器,格式支持并不是很多,请自行测试和斟酌。视频播放完会关闭悬浮窗口。

hasPermission

是否有显示悬浮窗口的权限。(同步方法)返回true有权限,返回false没有权限。

用Meizu Metal测试时(不排除其它手机也会这样),虽然hasPermission返回的是false,可以显示,但是不能移动。 只有hasPermission为true的时候,不仅可以显示,还可以移动。 v1.0.1版本在右上角加了关闭按钮,只有开通了“悬浮窗口”权限才会显示,没开通权限不会显示关闭按钮。

hasPermission()

示例代码

    var floatVideo = api.require('floatVideo');
    var p = floatVideo.hasPermission();

可用性

Android系统

openSettings

打开安卓"设置"(Settings)界面

openSettings({params})

params

pkg:

  • 类型:字符串
  • 描述:(可选项)APP的包名,比如com.apicloud.app.book,大多数情况下都是设置自己APP的包名,所以不必带这个参数,用默认的就好。
  • 默认值:当前应用包名。

示例代码

    var floatVideo = api.require('floatVideo');
    floatVideo.openSettings();
    /*
        floatVideo.openSettings({
            "pkg": "com.tencent.mm" //微信
        });
    */

可用性

Android系统

setWinAttr

设置悬浮窗口属性。

setWinAttr({params}, callback(ret));

params

x:

  • 类型:数字
  • 描述:(可选项)x坐标。
  • 默认值:0

y:

  • 类型:数字
  • 描述:(可选项)y坐标。
  • 默认值:0

w:

  • 类型:数字
  • 描述:(可选项)窗口宽度。
  • 默认值:320

h:

  • 类型:数字
  • 描述:(可选项)窗口高度。
  • 默认值:300

url:

  • 类型:字符串
  • 描述:(必填)播放视频的url,支持网络和本地,支持m3u8。

currentPosition:

  • 类型:数字
  • 描述:(可选项)从这个位置开始播。(毫秒)
  • 默认值:0

clickBack:

  • 类型:布尔
  • 描述:(可选项)是否开启点击返回到App。(个人建议关闭,有时候只是想移动窗口,却被误判为点击事件了。)
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1 ,   //失败=-1,成功=0
    msg : ""   //提示信息
}

示例代码

    var floatVideo = api.require('floatVideo');
    floatVideo.setWinAttr({
        x: 10,
        y: 10,
        w: 200,
        h: 200,
        url: "http://cache.utovr.com/201508270528174780.m3u8",
        currentPosition: 60000,
        clickBack: false
    }, function(ret){
        alert(JSON.stringify(ret));
    });

可用性

Android系统

show

显示窗口。(显示之前至少调用一次setWinAttr来设置参数)

show(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    code: -1 ,   //失败=-1,成功=0
    msg : ""   //提示信息
}

示例代码

    var floatVideo = api.require('floatVideo');
    //floatVideo.show();  //简写
    floatVideo.show(function(ret){
        alert(JSON.stringify(ret));
    });

可用性

Android系统

hide

隐藏窗口。

hide()

示例代码

    var floatVideo = api.require('floatVideo');
    floatVideo.hide();

可用性

Android系统

getCurrentPosition

获取视频播放位置。(同步方法)

getCurrentPosition()

示例代码

    var floatVideo = api.require('floatVideo');
    var p = floatVideo.getCurrentPosition();

可用性

Android系统