# Photo app **Repository Path**: tz520/photo-app ## Basic Information - **Project Name**: Photo app - **Description**: No description available - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-07 - **Last Updated**: 2026-07-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PhotoOrganizer (特控Photo) 基于 Jetpack Compose 和 ML Kit 的 Android 智能照片管理应用。支持自动标签识别、智能分类整理、加密存储、自定义文件夹和自训练模型。 ## 功能 - **自动标签识别** - 基于 Google ML Kit 识别照片场景、物体、文字和人脸 - **智能分类** - 按标签自动归类照片,支持按标签、日期、文件名排序 - **多选操作** - 长按进入多选模式,支持批量加密、添加到文件夹 - **加密相册** - AES-256/CBC 加密存储敏感照片,独立密码保护 - **自定义文件夹** - 独立于系统相簿的文件夹管理,灵活组织照片 - **搜索** - 按标签搜索,快速定位照片 - **自训练模型** - 支持用户修正识别结果,累积训练数据优化识别准确率 ## 技术栈 | 类别 | 技术 | |------|------| | 语言 | Kotlin | | UI | Jetpack Compose + Material 3 | | 架构 | Clean Architecture + MVVM | | 依赖注入 | Hilt | | 数据库 | Room | | 图片加载 | Coil | | 导航 | Navigation Compose | | ML | Google ML Kit (Image Labeling, Face Detection) | | AI 扩展 | MediaPipe Tasks Vision, Paddle Lite (可选) | ## 项目结构 ``` app/src/main/java/com/example/photoorganizer/ ├── data/ │ ├── local/ # Room 数据库、DAO、Entity │ ├── ml/ # ML Kit / MediaPipe / Paddle Lite 仓库 │ ├── model/ # 数据模型 (Album, Photo, LabelResult) │ └── repository/ # 数据仓库 ├── di/ # Hilt 依赖注入模块 ├── domain/ │ ├── usecase/ # 业务用例 │ └── util/ # 工具类 (CryptoUtil, LabelTranslator) ├── ui/ │ ├── albums/ # 相册列表 & 详情 │ ├── components/ # 可复用组件 (PhotoGrid, TagChip 等) │ ├── encrypt/ # 加密相册 │ ├── folders/ # 文件夹管理 │ ├── navigation/ # 导航图 │ ├── organize/ # 快速整理 │ ├── photos/ # 照片浏览 & 详情 │ ├── search/ # 搜索 │ ├── selftrain/ # 自训练 │ ├── settings/ # 设置 │ └── tags/ # 标签管理 ├── MainActivity.kt └── PhotoOrganizerApp.kt ``` ## 构建 ### 环境要求 - Android Studio Hedgehog (2023.1.1) 或更高版本 - JDK 17 - Android SDK 34 - Gradle 8.7 ### 构建步骤 ```bash # 设置 Android SDK 路径 export ANDROID_HOME=/opt/android-sdk # 编译 Release APK ./gradlew assembleRelease # 输出的 APK 位于 # app/build/outputs/apk/release/app-release-unsigned.apk ``` ## 权限 | 权限 | 说明 | |------|------| | READ_EXTERNAL_STORAGE | 读取外部存储 (Android 12 及以下) | | READ_MEDIA_IMAGES | 读取媒体图片 (Android 13+) | | INTERNET | 网络访问 | ## 版本 - **当前版本**: 3.0 (versionCode: 3) - **最低支持**: Android 8.0 (API 26) - **目标**: Android 14 (API 34)