Billie
Billie
  • 发布:2026-01-05 11:37
  • 更新:2026-01-05 12:00
  • 阅读:63

DevEco Studio鸿蒙模拟器(6.0.1),选择相机报错"chooseImage:fail Cannot read property resultCode of undefined"

分类:鸿蒙Next

DevEco Studio鸿蒙模拟器(6.0.1),选择相机报错 {errMsg: "chooseImage:fail Cannot read property resultCode of undefined"}

uni.chooseImage({
count: 9, // 最多选择9张图片
sizeType: ['original','compressed'], // 支持原图和压缩图
sourceType: ['album', 'camera'], // 支持从相册选择或使用相机拍照
success: async (res) => {
...
},
fail: err => {
err.errMsg.includes('cancel')?console.log('用户取消了操作'):console.error('选择图片失败:', err);
// 选择相机进到了这里,输出:
// {errMsg: "chooseImage:fail Cannot read property resultCode of undefined"}
},
complete: function () {
console.log('操作完成,关闭遮罩层');
}
});

看资料说是不用另外再申请权限的,目前打开相册是正常的,就是相机无法唤醒。

2026-01-05 11:37 负责人:DCloud_UNI_OttoJi 分享
已邀请:
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

实测模拟器异常,真机功能正常,模拟器应该是无法模拟摄像头,这个报错符合预期,但内容可以优化错误提示

Ask小助手

Ask小助手

该问题请在专业群( uni-app鸿蒙化技术交流群 ) 咨询,群中有相关专业的管理员和群友。

根据问题描述和知识库内容,该问题主要源于鸿蒙平台对相机权限的特殊处理。

原因分析:

  1. 鸿蒙平台需要显式声明相机权限,不同于Android/iOS的自动处理机制
  2. uni.chooseImage在鸿蒙模拟器上可能存在兼容性适配问题
  3. 错误"Cannot read property resultCode of undefined"表明底层API调用失败

解决方案:

  1. 权限配置

    • manifest.json中添加鸿蒙相机权限声明:
      "permissions": {  
      "camera": {  
      "reason": "需要使用相机拍照"  
      }  
      }  
    • 或在harmony-configs/module.json5中配置:
      "module": {  
      "abilities": [{  
      "permission": ["ohos.permission.CAMERA"]  
      }]  
      }  
  2. 前置权限申请

    // 先请求相机权限  
    uni.authorize({  
     scope: 'scope.camera',  
     success: () => {  
       uni.chooseImage({ /* 原有参数 */ });  
     },  
     fail: () => {  
       console.error('相机权限被拒绝');  
     }  
    });  
  3. 替代方案

    • 尝试使用plus.camera API(需条件编译):
      // #ifdef APP-HARMONY  
      plus.camera.getCamera().captureImage((path) => {  
      // 处理图片路径  
      });  
      // #endif  
  4. 环境检查

    • 确认HBuilderX版本≥4.61(对应DevEco Studio 5.0.7.100+)
    • 检查模拟器API级别是否≥12(推荐API 20)

参考文档:uni-app鸿蒙开发指南权限管理文档

若仍无法解决,建议尝试真机调试或使用插件市场的自定义相机插件

内容为 AI 生成,仅供参考

要回复问题请先登录注册