该项目属于云存储与效率工具领域,面向个人用户的文件存储、跨设备管理、内容分享和在线消费场景。
项目主要解决手机端文件分散、传输任务难管理、大文件分享不便、视频与压缩包需要下载后才能查看,以及敏感文件缺少隐私保护等问题,为用户提供“上传存储—分类管理—在线预览—分享转存—安全保护”的完整云盘使用闭环。
适用场景包括:
- 图片、视频、音频和文档的云端备份与管理
- 大文件上传、下载及离线任务管理
- 文件链接分享、好友转存与内容订阅
- 视频、音频、图片和压缩包在线预览
- 私密文件加密存储及生物识别访问
- 会员订阅、存储空间扩容等商业化场景
项目是一款基于 SwiftUI 开发的原生 iOS 云盘 App,主要功能包括:
- 文件管理:支持文件夹浏览、搜索、分类筛选、排序、重命名、移动、复制、删除、回收站及批量操作。
- 上传下载:支持图片、视频和本地文件上传,提供上传、下载及离线任务列表,可进行暂停、恢复、重试和进度查看。
- 分享转存:支持生成分享链接、自定义口令、分享模板、微信及 QQ 分享,并可将他人分享的文件保存到个人云盘。
- 订阅更新:支持订阅已转存内容,识别分享文件的后续更新,并按需保存新增或变更文件。
- 内容预览:支持图片浏览、视频及音频播放、字幕、倍速、清晰度切换,以及带密码压缩包预览和云端解压。
- 隐私保险箱:支持密码及 Face ID/Touch ID 解锁,对私密文件进行上传、移动、搜索、预览和播放。
- 用户体系:支持手机号、一键登录及第三方登录,并包含账号管理、会员内购、存储空间和消息通知等功能。
- 体验能力:支持深色模式、国际化、多选手势、下拉刷新、Universal Link 和跨页面状态同步。
本人作为 iOS 核心研发,参与需求评审、技术方案设计、功能开发、接口联调、测试修复、App Store 提审及上线维护的完整流程。
项目采用 Swift 5 + SwiftUI 技术方案,按照表现层、业务领域层、核心服务层和基础设施层进行模块化设计:
- 使用 SwiftUI、ObservableObject 和 Combine 构建状态驱动的页面及业务交互。
- 按首页、云盘、传输、播放器、登录、设置和保险箱等业务域拆分模块。
- 通过 Repository 封装文件、分享、传输、配置及保险箱等数据访问能力,降低页面与接口之间的耦合。
- 建设统一路由和事件刷新机制,处理登录分发、文件预览、分享链接及跨模块跳转,并保证上传、移动、重命名和转存后的页面状态一致。
- 上传任务采用 Manager + Scheduler + DAO 结构,结合 SQLite 持久化、任务调度和阿里云 OSS 分片上传,实现暂停、恢复、失败重试及未完成任务恢复。
- 下载模块支持并发任务控制、下载链接过期刷新、组合任务管理及进度状态同步。
- 保险箱使用 Keychain 保存敏感信息,结合 LocalAuthentication 实现 Face ID/Touch ID 验证,并统一处理重新鉴权和跨入口访问控制。
- 建设 Design Token、公共 UI 组件和 String Catalog 国际化体系,统一明暗主题、字体、颜色及双端文案。
- 建立覆盖上传、下载、预览、播放、分享、转存及解压等流程的埋点和日志体系,提升线上问题定位效率。
- 编写依赖兼容脚本,将仅支持真机的私有动态库适配 Apple Silicon 模拟器,降低本地开发和联调成本。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论