uni-app uni.chooseVideo配置compressed后在安卓11上无法触发回调

uni-app uni.chooseVideo配置compressed后在安卓11上无法触发回调

开发环境 版本号 项目创建方式
Windows win10 HBuilderX

产品分类:uniapp/App

PC开发环境操作系统:Windows

PC开发环境操作系统版本号:win10

HBuilderX类型:正式

HBuilderX版本号:3.1.11

手机系统:Android

手机系统版本号:Android 11

手机厂商:OPPO

手机机型:opporeno5pro+

页面类型:vue

打包方式:离线

示例代码:

uni.chooseVideo({
    /**  
    是否压缩所选的视频源文件,默认值为 true,需要压缩。  
    微信小程序、百度小程序、字节跳动小程序
    */
    compressed: false,
    success:function(){
    },
    fail:function(){
    },
    complete:function(){
    }
})

更多关于uni-app uni.chooseVideo配置compressed后在安卓11上无法触发回调的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app uni.chooseVideo配置compressed后在安卓11上无法触发回调的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是一个已知的兼容性问题。在Android 11上,当设置compressed: false时,某些厂商设备(特别是OPPO、VIVO等)的视频选择器可能无法正确返回结果。建议采取以下解决方案:

  1. 临时解决方案:将compressed设为true或移除该参数(默认值为true),让系统自动压缩视频。虽然会影响视频质量,但能确保功能正常。

  2. 替代方案:使用uni.chooseMediaAPI替代,该接口对Android 11有更好的兼容性:

uni.chooseMedia({
    count: 1,
    mediaType: ['video'],
    sourceType: ['camera','album'],
    success(res) {
        // 处理视频文件
    }
})
  1. 权限配置:确保在manifest.json中正确声明相机和存储权限:
{
    "android": {
        "permissions": ["CAMERA", "READ_EXTERNAL_STORAGE", "WRITE_EXTERNAL_STORAGE"]
    }
}
回到顶部