小程序开放平台

文档中心
表单组件
基础内容
媒体组件
image
video
video-player
camera
地图
视图容器
导航组件
开放能力
画布

camera

开发
>
组件
>
媒体组件
>
camera
>
更新时间:2026-03-19 17:49:04

camera

系统相机。camera 组件为同层渲染原生组件,通过在 WebView 中嵌入原生摄像头视图实现,前端 H5 元素可通过 z-index 叠加在 camera 之上。

需要用户授权

scope.camera
,授权拒绝时会触发
binderror
事件。

通过

获取 CameraContext,用于操作 camera 组件实例。

属性

属性
类型
默认值
必填
说明
resolutionstringmedium分辨率
device-positionstringback摄像头朝向
flashstringauto闪光灯模式
bindinitdoneeventhandle相机初始化完成时触发,event.detail = { maxZoom }
binderroreventhandle相机初始化或创建失败时触发,event.detail = { errMsg }
bindstopeventhandle相机停止时触发,event.detail = { errMsg }

resolution 的合法值

说明
low低分辨率(约 0.54 倍缩放)
medium中分辨率(约 0.75 倍缩放)
high高分辨率(原始分辨率)

device-position 的合法值

说明
front前置摄像头
back后置摄像头

flash 的合法值

说明
auto自动闪光灯
on闪光灯常开
off关闭闪光灯
torch手电筒模式(常亮)

实例代码

Page({
  takePhoto() {
    const cameraContext = xhs.createCameraContext();
    cameraContext.takePhoto({
      quality: 'normal',
      success: (res) => {
        console.log('拍照成功,照片路径:', res.tempImagePath);
      },
      fail: (err) => {
        console.error('拍照失败:', err.errMsg);
      },
    });
  },
});