Files
pad_scanner/docs/plans/2026-05-09-sound-settings-design.md
Misaka 28006f19a5 docs: add sound settings design document
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-09 20:50:35 +08:00

1.3 KiB
Raw Blame History

铃声配置功能设计

概述

在设置页新增铃声配置入口,用户可以为"上架成功"和"上架失败"分别指定本地音频文件作为提示铃声。

依赖

  • file_picker — 从设备选择音频文件(支持 mp3/wav/ogg/aac/m4a/flac
  • audioplayers — 播放本地音频文件

数据存储

使用 SharedPreferences

  • sound_success — 上架成功铃声文件路径
  • sound_failure — 上架失败铃声文件路径

UI 设计

设置页新增"铃声设置"分区API 地址下方:

铃声设置
─────────────────────────────
上架成功铃声
[当前文件名或"未设置"]  [选择] [试听] [清除]

上架失败铃声
[当前文件名或"未设置"]  [选择] [试听] [清除]

音频播放逻辑

  • 封装为 SoundService,统一管理播放
  • 通过 DeviceFileSource 播放本地文件
  • 上架成功/失败时检查是否配置了铃声,有则播放
  • 保留现有震动反馈,铃声与震动并行

涉及文件

  1. pubspec.yaml — 添加依赖
  2. lib/services/sound_service.dart — 新建,封装音频播放
  3. lib/pages/settings_page.dart — 新增铃声配置 UI
  4. lib/pages/registration_page.dart — 集成铃声播放