uni-app plus.video.createLivePusher api 在鸿蒙2.0.0手机中无法使用 switchCamera 方法切换摄像头
uni-app plus.video.createLivePusher api 在鸿蒙2.0.0手机中无法使用 switchCamera 方法切换摄像头
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | HBuilderX |
产品分类:其他/5+ SDK
PC开发环境操作系统:Windows
HBuilderX类型:正式
HBuilderX版本号:3.2.3
手机系统:Android
手机系统版本号:Android 11
手机厂商:华为
手机机型:TAS-AL00
页面类型:vue
打包方式:云端
项目创建方式:HBuilderX
示例代码:
请查看附件
操作步骤:
在鸿蒙2.0.0 点击 “切换摄像头”按钮不能切换前置摄像头,安卓环境下正常
预期结果:
希望鸿蒙2.0.0系统点击切换摄像头可切换前置摄像头。LivePusher 直播推流模块在HX3.1.22之前版本默认使用前置摄像头,希望能恢复默认使用前置摄像头。
实际结果:
鸿蒙2.0.0系统点击切换摄像头后会导致页面卡死
bug描述:
plus.video.createLivePusher api 创建的livePusher对象在鸿蒙2.0.0系统中不能使用 switchCamera 方法切换摄像头,安卓手机可正常切换,将编译版本降至3.1.22版本打包鸿蒙2.0.0系统可正常切换摄像头。
更多关于uni-app plus.video.createLivePusher api 在鸿蒙2.0.0手机中无法使用 switchCamera 方法切换摄像头的实战教程也可以访问 https://www.itying.com/category-93-b0.html
4 回复
附件已经添加vue页面, 官方看到的话麻烦检测下。查看社区文档时看到有其他开发者也提到切换摄像头有问题。
更多关于uni-app plus.video.createLivePusher api 在鸿蒙2.0.0手机中无法使用 switchCamera 方法切换摄像头的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
我试试
找了台荣耀30 鸿蒙2.0.0 没有复现问题。 看一下我上传的附件有视频。
这是一个已知的兼容性问题。在HBuilderX 3.1.22之后的版本中,LivePusher模块在鸿蒙2.0.0系统上调用switchCamera方法确实存在异常,会导致页面卡死。
问题原因:
新版本中LivePusher模块在鸿蒙系统上的摄像头切换逻辑与Android系统存在兼容性差异,导致调用switchCamera方法时出现异常。
临时解决方案:
- 降级HBuilderX版本:将HBuilderX版本降至3.1.22或更早版本进行打包,这是目前最稳定的解决方案。
- 避免在鸿蒙系统上切换摄像头:在代码中判断当前系统,如果是鸿蒙2.0.0系统,则禁用摄像头切换功能。
代码示例(系统判断):
// 判断是否为鸿蒙系统
if (uni.getSystemInfoSync().platform === 'android' &&
uni.getSystemInfoSync().osName === 'harmony') {
// 鸿蒙系统下禁用摄像头切换
this.canSwitchCamera = false;
} else {
// 其他系统正常使用
this.canSwitchCamera = true;
}

