更新记录
1.8.0(2022-07-22)
- 修复Android 10 ,设置 targetSdkVersion=30 时 读取不到图片路径。
1.7.0(2022-07-18)
- 优化选择大的视频时,界面有短暂的阻塞卡住的问题,改成了异步回调。
1.6.0(2022-06-15)
- 修改IOS 端循环获取视频图片时,名称重复问题。
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 11.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:9 - 15 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
Android 和 IOS 获取视频封面图片插件
1. 实例化使用插件,
const plug=uni.requireNativePlugin("Html5app-VideoCover");
2. 使用方法
//获取视频封面图片
plug.setVideoPath({"url":"file:///var/mobile/Containers/Data/Application/09B0BB86-054B-4A78-BED4-795EE2A42DC5/tmp/IMG_3061.mp4"},ret=>{
_this.tip=JSON.stringify(ret);
_this.src=ret.image;
});
3. 地址转换
- 如果获取到的视频路径是相对地址:例如:_doc/06e43dddb107.mp4; ,需要转换成平台绝对地址。 可以使用以下方法转换。
var filePath=plus.io.convertLocalFileSystemURL("_doc/06e43dddb107.mp4");
- 转换之后地址
/storage/sdcard0/Android/data/io.dcloud.HBuilder/doc/06e43dddb107.mp4
4. setVideoPath 方法包含两个参数
参数名 | 说明 | 是否必填 |
---|---|---|
url | 传入视频平台的绝对路径 | 是 |
time | 获取视频图片的时间位置,单位s/秒: 数值, 默认是视频最开始位置 | 否 |
5. 删除缓存,避免产生过多的视频图片,在需要清理时执行
plug.deleteCache();
6. 返回参数,图片的地址,增加宽度大小时长回调。
{"code":0,
"size":2249896, //视频大小,单位:字节
"duration":4, //视频时长,单位:秒
"image":"file:///var/mobile/Containers/Data/Application/099F88A0-52CA-4A2F-B8CE-569C31A3BAFC/tmp/VideoCover/1657912846895263705471.jpg",
"width":720,
"height":1280
}