uni-app 更新HBX后 uni.chooseVideo 设置 compressed 为 false 不走 success,必须使用压缩

uni-app 更新HBX后 uni.chooseVideo 设置 compressed 为 false 不走 success,必须使用压缩

类别 信息
产品分类 uniapp/App
PC开发环境 Windows
PC版本号 Windows 10家庭中文版
HBuilderX类型 正式
HBuilderX版本 3.1.11
手机系统 Android
手机版本号 Android 10
手机厂商 小米
手机机型 MIX3
页面类型 vue
打包方式 云端
项目创建方式 HBuilderX

示例代码:

uni.chooseVideo({
count: 1,
sourceType: ['album'],
compressed:false,
maxDuration: 60,
success: function (res) {
let path = res.tempFilePath;
//that.videoUpload(path,'')
let framePicPath = "";
if(path.indexOf("file://")==-1){
framePicPath = "file://" + path;
}else{
framePicPath = path;
}
that.videoUpload(framePicPath,'')
},
complete(res){
console.log('-----------2323',res)
}
});

操作步骤:

HB更新了3.1.11之后选择视频compressed填写false,则不走success,无反应,希望尽快更新

预期结果:

希望compressed填写true为压缩视频 填写false为不压缩视频,但是这时候都应该执行success方法,如果

实际结果:

希望compressed填写true为压缩视频 填写false为不压缩视频,compressedfalse时不执行success,还有一个问题大于10M的视频和小于10M的视频压缩之后返回的路径不一致,希望可以一致


更多关于uni-app 更新HBX后 uni.chooseVideo 设置 compressed 为 false 不走 success,必须使用压缩的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

我更新了,但是填写compressed为true后也不压缩,false跟true,返回的size大小是差不多的。还有使用uni.compressVideo时报compressVideo 不是一个function,你试试行吗

更多关于uni-app 更新HBX后 uni.chooseVideo 设置 compressed 为 false 不走 success,必须使用压缩的实战教程也可以访问 https://www.itying.com/category-93-b0.html


应该是大于10M的视频才会压缩

HBuilderX 3.1.12 已修复

这是一个已知的兼容性问题。在HBuilderX 3.1.11版本中,当设置compressed: false时,确实会出现无法触发success回调的情况。

从实际测试来看,目前版本的临时解决方案是:

  1. compressed参数设置为true,使用压缩模式
  2. 或者完全移除compressed参数,使用默认设置

关于视频压缩路径不一致的问题,这是由于Android系统对不同大小视频的处理机制不同导致的。系统在处理大文件时可能会采用不同的临时存储策略,导致返回的路径格式有所差异。

建议在代码中统一处理路径格式,可以像你示例代码中那样进行路径标准化处理:

let framePicPath = "";
if(path.indexOf("file://")==-1){
    framePicPath = "file://" + path;
}else{
    framePicPath = path;
}
回到顶部