Files
my/app.md
2025-12-20 11:05:21 +08:00

3.4 KiB
Raw Blame History

构建 iOS 原生应用 "私密管家" (SecretKeeper)

具体功能模块实现细节:

任务:
请根据以下详细的功能描述和字段定义,开发一个名为“超级保险库”的原生 iOS 应用。

一、 详细页面与录入字段定义

1. 账号保险库 (Account Vault)

界面要求: 顶部有 Segmented Control 切换按钮:全部 / APP/ 网站/邮箱/其它

列表页: 按字母 A-Z 分组,显示项目名称、用户名/邮箱、所属地区标签。
录入/编辑页字段:

  • 账号名称 (Name): 必填。
  • 用户名 (Username): 常用账号标识。
  • 邮箱地址 (Email): 支持自动填充。
  • 手机号 (Phone): 数字键盘。
  • 登录密码 (Password): 核心字段需加密存储。需实时显示强度条0-100分
  • 网站地址 (URL): URL 格式校验。
  • 所属地区 (Region): 默认为“中国”。
  • 所属分类 (Category): 从预设分类APP、网站、邮箱、其它中选择分类头像可选择默认的图标。
  • 详细备注 (Notes): 多行文本,记录补充信息。
  • 每个账号提供头像的选择功能app默认提供40个扁平化彩色图标让用户选择
  • 账号列表页顶部有 Segmented Control 切换按钮进行分类的筛选

2. 银行卡包 (Bank Cards)

列表页: 3D 仿真卡片视图显示银行名称、卡号末四位、CVV码和持卡人。

界面要求: 顶部有 Segmented Control 切换按钮: “全部” / “银行卡” / “信用卡”
录入/编辑页字段:

  • 卡片类型: Segmented Control - 储蓄卡 / 信用卡。
  • 银行名称 (Bank Name): TextField - 必填。
  • 银行卡号 (Card Number): TextField - 数字键盘格式化显示4位一空格加密存储
  • 持卡人 (Card Holder): TextField - 自动大写。
  • 有效期 (Expiry Date): TextField - 格式 MM/YY。
  • 安全码 (CVV): SecureField - 3位数字加密存储
  • 支付密码 (Pay Password): SecureField - 6位数字用于在线支付加密存储
  • 提款密码 (Withdraw Password): SecureField - ATM 密码,​加密存储
  • 卡面颜色: Color Picker - 提供预设的 5 种渐变色方案。

3. 媒体库 (Media Vault)

界面要求: 顶部有 Segmented Control 切换按钮:​ “全部” / “照片” / “视频” ​。
录入逻辑:

  • 数据源: 调用 PhotosPicker。
  • 功能要求 提供在系统相册中导入功能,导入成功后根据用户需要删除系统相册中的相同内容
  • 导出 提供导出到系统相册的功能

4. 安全与设置 (Settings)

  • 主密码设置: 首次启动强制设置6位数字密码派生加密根密钥。
  • 生物识别开关: 开启后App 进入后台自动加锁,唤起时优先使用 FaceID。
  • iCloud 同步: 进提供给内购用户,此功能预留。
  • 数据重置: 一键清空数据库及沙盒文件。
  • 暗黑/明亮/自动跟随系统主题选择。
  • 数据导入导出:提供本地/远程加密json文件的导入导出

二、 交互逻辑要求

  • 安全审计: 列表页对于强度分低于 60 的密码,显示红色警告图标。
  • 触感反馈: 点击“复制”按钮时,触发震动反馈。