Record Screen
/ Title: recordScreen Description: recordScreen /
论坛示例
作者联系方式QQ:503870798 ;有不解的地方可以随时咨询,同时欢迎提供有效意见和建议
概述
简介
本模块主要进行安卓手机的屏幕录制,附带屏幕截图功能,Android5.0版本以上适用(其中pause、resume功能需要Android7.0版本以上)。 编译的时候,记得使用升级环境编译。
模块接口
init
检查权限,然后请求创建一个录屏请求,系统会弹出一个询问框,用户授权后才可以进行录制和截屏 权限动态申请在Android6.0版本后,apicloud的默认targetSdkVersion是22,所以权限检查无效,需要设置编译的targetSdkVersion>=23,设置方法,参考https://developer.yonyou.com/thread-110959-1-1.html
init({}, callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "OK", //字符串类型;文字描述 }
示例代码
var recordScreen = api.require('recordScreen');
recordScreen.init({},function(ret){
alert(JSON.stringify(ret))
});
可用性
Android系统
可提供的1.0.0及更高版本
start
开始录屏,需要在init后调用 执行开始录屏操作时,如果录屏正在继续,会先停止录屏,再重新按新传入的配置执行录屏
start({params}, callback(ret, err))
params
path:
- 类型:字符串
- 默认值:""
- 描述:录制的视频存放的路径
width:
- 类型:数值
- 默认值:1080
- 描述:视频分辨率-宽
height:
- 类型:数值
- 默认值:1920
- 描述:视频分辨率-高
dpi:
- 类型:数值
- 默认值:1
- 描述:DPI
bitrate:
- 类型:数值
- 默认值:1024*1024
- 描述:比特率
fps:
- 类型:数值
- 默认值:60
- 描述:FPS
orientation:
- 类型:数值
- 默认值:0
- 描述:视频方向,指顺时针旋转的角度,可选值:0、90、180、270
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 path: "/storage/emulated/0/recordScreen/2022-03-25-10-49-22.mp4", //保存的文件完整路径 }
示例代码
recordScreen.start({
path: '/recordScreen'
},function(ret){
alert(JSON.stringify(ret))
});
可用性
Android系统
可提供的1.0.0及更高版本
stop
停止录屏,需要在init后调用 停止录屏后才可以使用保存的视频文件
stop({}, callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 }
示例代码
but1.onclick = function(){
recordScreen.stop({}, function(ret){
alert(JSON.stringify(ret))
})
}
可用性
Android系统
可提供的1.0.0及更高版本
pause
暂停录屏,需要在init后调用,且录屏正在进行 要求Android7.0版本以上才能使用此功能
stop({}, callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 }
示例代码
but2.onclick = function(){
recordScreen.pause({}, function(ret){
alert(JSON.stringify(ret))
})
}
可用性
Android系统
可提供的1.0.0及更高版本
resume
继续录屏,需要在init后调用,且录屏处于暂停 要求Android7.0版本以上才能使用此功能
stop({}, callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 }
示例代码
but3.onclick = function(){
recordScreen.resume({}, function(ret){
alert(JSON.stringify(ret))
})
}
可用性
Android系统
可提供的1.0.0及更高版本
release
释放录屏进程,下次录屏,需要再次调用init然后询问用户操作 执行释放操作时,如果录屏正在继续,会先停止录屏,再释放
release({}, callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 }
示例代码
but4.onclick = function(){
recordScreen.release({}, function(ret){
alert(JSON.stringify(ret))
})
}
可用性
Android系统
可提供的1.0.0及更高版本
imgCapture
截屏,需要在init后调用
imgCapture({params}, callback(ret, err))
params
path:
- 类型:字符串
- 默认值:""
- 描述:截屏的图片存放的路径
width:
- 类型:数值
- 默认值:1080
- 描述:图片分辨率-宽
height:
- 类型:数值
- 默认值:1920
- 描述:图片分辨率-高
dpi:
- 类型:数值
- 默认值:1
- 描述:DPI
callback(ret, err)
ret:
- 类型:JSON 对象
- 描述:返回执行结果
- 返回执行结果的内部字段:
{ status: true, //布尔类型;操作成功状态值,true|false msg: "操作成功", //字符串类型;文字描述 path: "/storage/emulated/0/recordScreen/2022-03-25-10-49-22-785.png", //保存的文件完整路径 }
示例代码
but5.onclick = function(){
recordScreen.imgCapture({
path: "/recordScreen"
}, function(ret){
alert(JSON.stringify(ret))
})
}
可用性
Android系统
可提供的1.0.0及更高版本