floatVideo
来自于:开发者立即使用
hasPermission openSettings setWinAttr show hide getCurrentPosition
概述
悬浮窗口播放视频,能在手机桌面上播放视频,一边看视频一边玩别的。因为播放器用的是系统自带的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系统