Files
anroid-CheckShot/README.md
xiaji f436275b7d Update README with '巡检相机'定位 and add interface screenshots
- Change project定位 to '巡检相机' (Inspection Camera)
- Add 4 interface screenshots: Camera, Gallery, Puzzle, Settings
- Keep all other documentation unchanged
2026-03-17 23:07:06 +08:00

144 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 巡检相机 - Android 巡检图片处理工具
巡检相机是一个面向 Android 的巡检图片处理工具,包含水印处理、拼图合成、以及丰富的设置能力,配合 AirTest 自动化测试用例,帮助实现端到端的图像工作流。
## 软件界面截图
启动应用后,可以看到以下主要界面:
### 1. 相机界面
![相机界面](相机.png)
*主相机界面,支持拍照、自动/手动对焦、曝光调节,拍摄后自动叠加水印*
### 2. 相册界面
![相册界面](相册.png)
*相册管理界面,支持本地存储、分类管理、预览、导出/分享*
### 3. 拼图界面
![拼图界面](拼图.png)
*多图拼图合成界面,支持 2x2 和 3x3 网格布局*
### 4. 设置界面
![设置界面](设置.png)
*应用设置界面,支持水印、合成、通用等配置项调整*
## 功能特点
- **相机模块**:使用 CameraX 库实现拍照、自动/手动对焦、曝光调节,拍摄后自动叠加水印(时间+地点)
- **水印处理**:支持时间水印(格式固定为 "yyyy年-MM月-dd日 HH:mm:ss")和地点水印(优先联网解析,失败时显示经纬度),提供三种预设样式
- **多图拼图(合成)模块**:支持 2x2 和 3x3 网格布局,图片自动缩放裁剪,支持图片替换、删除、添加和质量控制
- **文字编辑模块**:在合成图片的顶部(标题)和底部(内容)添加带矩形背景的文字说明,支持智能换行
- **图片管理**:本地存储、分类管理、预览、导出/分享,遵循分区存储规则通过 MediaStore 保存至系统相册
- **设置与通用配置**:水印设置、合成设置、通用设置、关于等配置项均可通过设置界面调整
- **测试与自动化**:集成 AirTest 测试用例,覆盖水印、相册、拼图、设置等场景,便于回归验证
## 安装步骤
1. **克隆项目**
```bash
git clone http://124.223.26.33:3000/xiaji/anroid-CheckShot.git
cd anroid-CheckShot
```
2. **构建调试 APK**
```bash
./gradlew assembleDebug
```
3. **安装到设备**
```bash
adb install -r app/build/outputs/apk/debug/app-debug.apk
```
4. **安装 AirTest 依赖(用于测试)**
```bash
pip install airtest pocoui
```
## 使用示例
### 基本使用
1. **启动应用**:在 Android 设备/模拟器上安装并打开巡检相机
2. **拍照**:点击相机按钮拍照,自动添加水印
3. **拼图**:选择多张图片进行拼图合成
4. **查看相册**:浏览和管理拍摄的照片
### 构建发布 APK
```bash
# 构建签名 APK需配置好 keystore
./gradlew assembleRelease
# 构建产物位置
app/build/outputs/apk/release/app-release.apk
```
### 运行测试
```bash
# 确保设备已连接
adb devices
# 运行 AirTest 拼图测试
airtest run test/airtest/test_puzzle_merge.py --device Android:///
# 运行手动测试脚本
python test_android.py # 基础功能测试
python test_camera.py # 相机功能测试
python test_gallery.py # 相册功能测试
```
## 目录结构
```
anroid-CheckShot/
├── app/ # App 模块
│ ├── src/main/ # 主代码
│ │ ├── java/ # Kotlin/Java 代码
│ │ └── res/ # 资源文件
│ ├── build.gradle.kts # App 级构建配置
│ └── my-release.jks # 签名密钥(本地)
├── test/ # 测试代码
│ └── airtest/ # AirTest UI 测试
├── gradle.properties # Gradle 属性(含签名配置)
├── build.gradle.kts # 项目级构建配置
├── settings.gradle.kts # 项目设置
└── README.md # 项目说明
```
## 贡献指南
1. Fork 项目仓库
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 提交 Pull Request
## 常见问题 (FAQ)
**Q: 如何配置签名?**
A: 项目已配置自动签名,签名密钥文件 `my-release.jks` 在 `app/` 目录下,密码在 `gradle.properties` 中配置。
**Q: 如何修改水印样式?**
A: 在设置界面中选择水印样式(默认/简约/醒目),可实时预览效果。
**Q: AirTest 测试失败怎么办?**
A: 确保设备已连接且已安装 AirTest 依赖,检查设备是否开启开发者选项和 USB 调试。
**Q: 拼图功能支持哪些布局?**
A: 支持 2x2 和 3x3 网格布局,图片会自动缩放裁剪以适配网格。
## 联系方式/反馈渠道
- 项目仓库http://124.223.26.33:3000/xiaji/anroid-CheckShot.git
- 问题反馈:请在仓库中提交 Issue
- 代码贡献:欢迎提交 Pull Request
---
**注意**:请妥善保管签名密钥文件 (`my-release.jks`) 和密码,这些文件已添加到 `.gitignore` 中,不会被提交到版本控制。