iPhotoLight 是一个本地运行的 iPhone 相册整理工具。它用卡片手势帮助你逐张处理照片和视频:左滑保留,上滑加入待删除列表,确认后再调用系统相册删除接口。
项目使用 SwiftUI、PhotoKit 和 AVKit。照片内容不会上传到外部服务。
- 按全部、收藏、截图和 Live Photo 筛选照片
- 分批加载资源,避免一次性创建大量预览
- 记录已保留项目,后续整理时自动跳过
- 在真正删除前集中复核照片和视频
- 支持有限照片权限、Live Photo 预览和视频播放
- 展示累计处理数量与估算释放空间
- 支持简体中文和英文
iPhotoLight/
├── App/ 应用入口
├── Managers/ PhotoKit、整理历史和统计持久化
├── Models/ 相册资源与待删除记录
├── ViewModels/ 照片、视频和统计页面状态
└── Views/ SwiftUI 页面与可复用组件
- 使用 Xcode 打开
iPhotoLight.xcodeproj。 - 选择真机作为运行目标。模拟器通常没有适合测试的真实相册内容。
- 运行应用并授予完整或有限的照片访问权限。
仓库当前的 deployment target 是 iOS 26.2;如需支持更早系统,请在 Xcode 中调整 target,并检查所用 API 的可用性。
上滑只会把资源加入应用内的待删除列表。用户在复核页确认后,系统仍会显示 PhotoKit 的最终删除授权界面。
“释放空间”来自相册资源大小的估算值,用于提供整理进度反馈,不代表设备即时可用空间。
- 当前没有自动化测试目标。
- 修改加载逻辑时,需要重点回归快速切换分类、有限照片权限和 iCloud 相册资源。
- Xcode 的个人工作区状态不应提交,相关路径已加入
.gitignore。
MIT