Hbuildx3.1.11 api uni.chooseVideo 返回tempFilePath 为绝对路径 如:/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/temp/compress_video_6848098.mp4
然而此时 调用 uni.uploadFile 直接将上面返回的tempFilePath 放置在filePath 中Android端上传视频失败!(h5端可以上传成功)
- 发布:2021-04-25 09:55
- 更新:2023-04-21 16:46
- 阅读:1255
产品分类: HbuilderX
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX版本号: 3.1.11
操作步骤:
预期结果:
Hbuildx3.1.11 保持与Hbuildx3.1.9 一样
Hbuildx3.1.11 保持与Hbuildx3.1.9 一样
实际结果:
Hbuildx3.1.11 保持与Hbuildx3.1.9 一样
Hbuildx3.1.11 保持与Hbuildx3.1.9 一样
bug描述:
Hbuildx3.1.9 api uni.chooseVideo 返回tempFilePath 为相对路径 如:_doc/uniapp_temp_1619314755231/camera/1619314886586.mp4
此时 调用 uni.uploadFile 直接将上面返回的tempFilePath 放置在filePath 中是可以直接上传视频成功!(Android,h5端均可以上传成功)
Hbuildx3.1.11 api uni.chooseVideo 返回tempFilePath 为绝对路径 如:/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/temp/compress_video_6848098.mp4
然而此时 调用 uni.uploadFile 直接将上面返回的tempFilePath 放置在filePath 中Android端真机运行上传视频失败!(h5端可以上传成功)
请在Android端真机运行!!望尽快答复!!
7 个回复
最佳回复
DCloud_UNI_GSQ
问题确认,已加分,即将修复
真机出现问题的可以重新打包自定义基座尝试。
或者采用临时解决方案:启用压缩,判断返回路径为绝对路径时拼接 'file://'
狼性做事 (作者) - 奔向远方
麻烦官方尽快确认下
DCloud_Android_ST
先关闭视频压缩
狼性做事 (作者)
我们现在需要视频压缩的功能,是否可以增加个api ,将绝对路径,转换成为相对路径,或者有别的解决办法吗?
2021-04-25 11:24
狼性做事 (作者)
若uni.chooseVideo 改为不压缩 compressed:false后,此api uni.chooseVideo 没有任何响应,fail 也不回调!
2021-04-25 11:36
DCloud_Android_ST
回复 狼性做事: 示例demo发下看看
2021-04-25 11:39
狼性做事 (作者)
回复 DCloud_Android_ST: let _this = this
uni.chooseVideo({
count: 1,
compressed:false,
maxDuration: 15,
sourceType: ['camera'],
success: function(res) {
console.log(res)
console.log('视频大小----',res.size)
2021-04-25 13:36
狼性做事 (作者)
回复 DCloud_Android_ST: uni.chooseVideo 设置不压缩后 无任何响应,设置压缩后,可以正常返回 压缩后的视频绝对路径
2021-04-25 13:37
狼性做事 (作者)
回复 DCloud_Android_ST: uni.chooseVideo设置压缩后,返回的绝对路径是/storage/emulated/0/Android/data/包名/apps/UNI12BACCD/temp/compress_video_65568970.mp4 而将这个绝对路径传给 uni.uploadFile的filePath 后,实际上传的路径变成了/storage/emulated/0/Android/data/com.sd.jn.sxzn.xfys/apps/UNI12BACCD/www/storage/emulated/0/Android/data/包名/apps/UNI12BACCD/temp/compress_video_65568970.mp4 显然找不到mp4文件,android直接报 java.io.FileNotFoundException 请问有好的解决办法吗?我们需要压缩这个功能
2021-04-26 14:08
狼性做事 (作者)
回复 DCloud_Android_ST: 这个绝对是3.1.11的一个bug,麻烦尽快确认下啊!
2021-04-26 14:10
狼性做事 (作者)
回复 DCloud_Android_ST: 设置压缩为false 同样有我上面描述的问题。 uni.uploadFile 上传实际路径错误。
2021-04-26 14:12
狼性做事 (作者) - 奔向远方
麻烦官方尽快确认下,谢谢!
7***@qq.com
好像还没有修复 前两天遇到了 我还以为是我代码的问题 找了一天。。确认是bug。。。。
2021-04-27 15:06
5***@qq.com - 古木
请问下一个版本什么时候更新
DCloud_UNI_GSQ
HBuilderX 3.1.12 已修复
5***@qq.com
这个问题在HBuilderX 3.3.13又出现了,我的代码:
uni.chooseVideo({
sourceType:['album'],
// compressed:false,
success : (res) => {
console.log(res)
// this.sendVideoMessage(res);
},
fail: (err) => {
console.log(err)
}
})
返回错误:
{
"errMsg": "chooseVideo:fail User cancelled",
"errCode": 12,
"code": 12
}
之前是好了,最近更新了HBuilderX 就出问题了compressed:false,也是一样的,错误说用户取消,可是没有取消啊,是真机调试的
2022-04-06 18:05
5***@qq.com
回复 5***@qq.com: 手机是Redmi K30 Ultra
2022-04-06 18:12
DCloud_UNI_GSQ
回复 5***@qq.com: 定不是同一个问题,单独发帖详细说明
2022-04-07 21:04
桃花岛主70 - 桃花岛主
uni.chooseVideo(OBJECT)这个在录制视频上传的时候,有些手机录制的格式不是mp4,而是3gp,不认这个格式,有知道解决办法的吗?