uni-app 荣耀Magic4唤不起相机

发布于 1周前 作者 gougou168 来自 Uni-App

uni-app 荣耀Magic4唤不起相机

开发环境 版本号 项目创建方式
Windows win10 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Windows

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

HBuilderX类型:正式

HBuilderX版本号:3.99

手机系统:Android

手机系统版本号:Android 11

手机厂商:华为

手机机型:荣耀Magic 4

页面类型:vue

vue版本:vue2

打包方式:云端

项目创建方式:HBuilderX

示例代码:

uni.chooseImage({
count: 1,
sourceType: [‘camera’],
sizeType: [‘compressed’],
fail:(error)=>{
}
})


操作步骤:

uni.chooseImage({
count: 1,
sourceType: [‘camera’],
sizeType: [‘compressed’],
fail:(error)=>{
}
})


直接调用,没有唤起相机

预期结果:
```
唤起相机
```

实际结果:
```
没有唤起相机
```

bug描述:
```
鸿蒙8.0.0系统,这个手机调用uni.chooseImage失败。也有很多用户了,只有这个机型调不起来uni.chooseImage。看了下用户也允许了相机权限。还有一个值得注意的点,在调起相机之前,还进行了前置摄像头的人脸识别(百度的人脸识别插件),人脸通过后才调用的uni.chooseImage,结果不行。你们有收到过类似的问题反馈吗

3 回复

各位领导干部解决了没

在使用 uni-app 开发应用时,如果荣耀 Magic4 无法唤起相机,可能是由于以下几个原因导致的:

1. 权限问题

  • 检查权限:确保应用已经获取了相机权限。在 manifest.json 中配置相机权限:
    "permission": {
      "scope.camera": {
        "desc": "需要访问相机"
      }
    }
  • 动态请求权限:在代码中动态请求相机权限:
    uni.authorize({
      scope: 'scope.camera',
      success() {
        console.log('相机权限已授权');
      },
      fail() {
        console.log('相机权限未授权');
      }
    });

2. API 使用问题

  • 检查 API 调用:确保正确使用了 uni.chooseImageuni.createCameraContext 等 API。例如:
    uni.chooseImage({
      count: 1,
      sourceType: ['camera'],
      success(res) {
        console.log('拍照成功', res.tempFilePaths[0]);
      },
      fail(err) {
        console.log('拍照失败', err);
      }
    });
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!