# Unif Camera > Unif Camera 文档索引。每个链接是该页的纯 Markdown 版(供 LLM 抓取);需要完整全文一次性喂入时用 /llms-full.txt。 ## 概览 - [介绍](/md/intro.md) — @unif/react-native-camera 是基于 react-native-vision-camera 5.x 的弹窗式相机库:await api.open() 弹出全屏相机,支持单拍 / 连拍 / 录像 / Skia 水印,公开面仅 useCamera()。 - [从 v1.x 升级](/md/migration.md) — @unif/react-native-camera v2.0.0 的破坏性变更与迁移方法:photoResolution/videoResolution → quality、watermark 的移除与回归、类型改从顶层入口导入。 - [AI Skill](/md/skills.md) — unif-camera 是一个 Agent Skill,教 AI 编码助手正确调用 @unif/react-native-camera 的 API、避免常见幻觉。 - [测试(Mock)](/md/testing.md) — 在 Jest 中用官方 mock 替换 @unif/react-native-camera:useCamera() 返回 [api, null],api.open 默认 resolve { code: 0 },工具函数与类型保留真实实现。 - [常见问题](/md/troubleshooting.md) — @unif/react-native-camera 排障决策树:相机黑屏(权限 / 缺 holder)、Unable to resolve(缺 peerDeps / worklets)、水印不出现(仅 JPEG)、模拟器 / Web 不工作(须真机 + Skia)、result code 处理。 ## api - [CameraApi](/md/api/camera-api.md) — CameraApi 相机控制对象:open(config) 弹出全屏相机并 resolve Promise,close() 强制关闭;含 OpenConfig 配置说明。 - [类型](/md/api/types.md) — @unif/react-native-camera 公开类型完整参考:OpenConfig、CameraMode、WatermarkType、CameraResult(状态码 200/0/403/404/500/503)、CustomPhotoFile 字段表。 - [useCamera](/md/api/use-camera.md) — useCamera() Hook:无参调用,返回 [api, holder] 二元组——api 控制相机开关,holder 是必须渲染进树的相机宿主节点。 ## getting-started - [核心概念](/md/getting-started/concepts.md) — 理解 @unif/react-native-camera 的核心心智模型:模态相机、holder 渲染、api.open(config) 的 Promise 生命周期、cameraMode/dataRetainedMode、CameraResult.code(200/0/403/404/500/503)、Skia 水印(仅 JPEG)。 - [安装](/md/getting-started/installation.md) — 安装 @unif/react-native-camera 及全部必装 peerDependencies(含 @dr.pogodin/react-native-fs fork 与 vision-camera-worklets),配置 iOS / Android 权限键,运行 pod install。 - [快速上手](/md/getting-started/quick-start.md) — 用 useCamera 5 分钟跑通第一次拍照:useCamera() 取 [api, holder],await api.open(config),按 code === 200 取 res.data。 ## guides - [录像](/md/guides/recording-video.md) — 录像场景指南:mode 'video' 视频录制、读取 duration/mime、与拍照混合的多模式 tab、recTime 时长上限、录像失败的相机内重试及播放方案。 - [拍照](/md/guides/taking-photos.md) — 拍照场景完整指南:单拍、连拍、JPEG quality 质量控制、多模式 tab 切换与 dataRetainedMode 保留策略,附 holder / code 200 易错点。 - [水印](/md/guides/watermark.md) — 给照片烧入文字水印:watermark.content[] 多行文字、position 六向定位、仅 JPEG 照片生效(录像无水印),并说明水印是可视标注、非防篡改。