**版本: 1.1** **日期: 2025年9月11日** **更新日期: 2025年10月15日** ### 1. 项目概述 ### 1.1. 项目背景 在快节奏的现代生活中,人们面临着各种情绪压力,但往往缺乏一个简单、直观且私密的情感表达渠道。“别摇小鸡”旨在通过一种新颖的物理交互方式——摇晃手机,帮助用户量化、记录并释放自己的情绪,让心情记录变得生动有趣。 ### 1.2. 产品定位与目标 一款以“小鸡”为核心IP形象的趣味性心情记录工具。 - **核心定位:** 你的随身情绪宣泄伙伴。 - 产品目标: - **近期目标:** 提供稳定、流畅的核心功能,让用户能够顺利完成“选择情绪 -> 摇晃记录 -> 添加详情 -> 保存”的全过程。打造可爱、治愈的品牌形象,吸引首批种子用户。 - **远期目标:** 扩展情绪回顾与分析功能,构建一个正向的情感支持社区,提升用户粘性。 ### 1.3. 目标用户 - **核心用户:** 16-28岁的年轻学生、职场新人。他们乐于尝试新鲜事物,注重个人感受,习惯使用手机记录生活,需要一个简单有趣的方式来管理自己的情绪。 - **次要用户:** 所有希望通过简单方式记录和了解自己情绪波动的用户。 ### 2. UI/UX 设计规范 ### 2.1. 核心形象:小鸡 (Piyo) 小鸡是整个App的灵魂,它的设计应遵循以下原则: - **形象:** 简约、圆润、可爱。主体为鲜明的黄色,能唤起温暖、活泼的感觉。 - 动态效果: 小鸡的动画是核心交互反馈。 - **待机状态:** 在情绪选择页,小鸡会有轻微的呼吸、眨眼等待机动画。 - **情绪状态:** 当用户选定一种情绪后,小鸡的表情和配饰会发生相应变化(例如,生气时头顶冒烟,悲伤时流泪)。 - **摇晃状态:** 在摇晃过程中,小鸡会根据摇晃的激烈程度,呈现出从轻微晃动到头晕眼花的夸张动画效果。 ### 2.2. 色彩体系 整体色调以温暖、治愈为主。主色调为小鸡的黄色,并为六种情绪设计了专属的辅助色系,确保视觉统一性。 | 情绪 | 代表色 | 十六进制色码 | 情绪描述 | | ---------- | ---------- | ------------- | -------------------- | | **主题色** | **小鸡黄** | **`#FFD954`** | **温暖、活力、核心** | | 开心 | 活力橙 | `#FFAB76` | 阳光、喜悦、温暖 | | 生气 | 警告红 | `#D9534F` | 愤怒、激烈、烦躁 | | 悲伤 | 忧郁蓝 | `#6B7AFF` | 沉静、伤感、低落 | | 烦恼 | 浅熏紫 | `#A989C5` | 焦虑、困惑、思索 | | 孤单 | 深海青 | `#4E89AE` | 孤独、冷静、疏离 | | 害怕 | 中性灰 | `#888888` | 不安、恐惧、紧张 | ### 2.3. 字体规范 - **中文字体:** 苹方-常规体 (PingFang SC) 或 思源黑体-常规体 (Source Han Sans) - **英文字体/数字:** Inter / Montserrat - **特点:** 字体应选择清晰易读的无衬线体,字号根据信息层级清晰划分。 ### 3. 产品功能详述 ### 3.1. 核心流程:记录心情 这是产品的核心功能闭环。 **流程:**`启动App` -> `进入主页/选择情绪` -> `进入准备页` -> `开始摇晃` -> `查看结果` -> `编辑详情页` -> `保存记录` **3.1.1. 主页 - 情绪选择** - 界面布局: - 屏幕中央是动态的小鸡形象。 - 周围环绕/下方陈列六个情绪按钮,每个按钮包含情绪名称和代表性图标。 - 底部有导航栏,通往“今日记录”和“我的”页面。 - 交互: - 用户点击某个情绪按钮,按钮呈现选中状态,中央的小鸡表情切换为对应情绪的可爱动画。 - 再次点击可取消选择,或选择其他情绪。 - 选定后,屏幕下方出现一个明确的“下一步”或“开始记录”按钮。 **3.1.2. 准备摇晃页** - 界面布局: - 屏幕中央是进入特定情绪状态的小鸡。 - 屏幕上出现清晰的引导文案,如“准备好了吗?请握紧手机,开始摇晃来捕捉你的【开心】情绪吧!” - 交互: - 此页面作为用户摇晃前的过渡,给予用户明确的心理和动作准备。 - 用户点击“开始”按钮后进入摇晃阶段。 **3.1.3. 摇晃捕捉页** - 界面布局: - 整个屏幕成为交互区域。 - 中央是小鸡,它会根据手机的晃动产生实时动画反馈。 - 屏幕顶部或周围有一个进度条/能量环,用于实时可视化“心情值”的累积。 - 屏幕下方有一个“结束”按钮。 - 交互与技术实现: - 调用手机的**陀螺仪和加速度传感器**来检测摇晃的幅度和频率。 - **心情值算法 (示例):** `心情值 = SUM(摇晃事件的加速度 * 权重) / 时间`。摇晃越剧烈、时间越长,心情值越高。 - 心情值实时反馈在进度条上,进度条的颜色会随着数值的增加,由浅变深。 - 用户可以随时点击“结束”按钮来停止记录。 - **安全机制:** 如果摇晃停止超过3-5秒,系统可以自动结束记录,防止误操作。 **3.1.4. 心情强度分级** 根据最终累积的“心情值”,系统自动判定情绪的激烈程度。 | 心情值范围 | 强度等级 | 界面显示 | | ----------- | -------- | ---------------- | | 1 - 1000 | 有些 | 有些开心 | | 1001 - 3000 | 非常 | 非常开心 | | 3001 - 6000 | 极度 | 极度开心 | | 6001+ | 无法控制 | 无法控制的开心! | **3.1.5. 详情编辑与保存页** - 界面布局: - 顶部显示本次记录的结果,如“**有些 开心**”,心情值为“**880**”。 - 记录的日期和时间。 - 一个大的文本输入框,提示用户“记录下此刻的想法吧...”。 - 一个“添加图片”的按钮。 - 底部是“保存”按钮。 - 交互: - 用户可以输入文字,或从相册选择/拍摄一张图片。 - 点击“保存”,系统会弹出“保存成功”的提示,并自动跳转到当天的记录列表或日历视图。 ### 3.2. 心情日历/回顾 - 界面布局: - 以月视图日历的形式展示。 - 记录过心情的日期,会用当天主要情绪的代表色进行标记或填充一个小圆点。 - 点击某个日期,下方会以卡片列表的形式展示当天的所有心情记录。 - 交互: - 用户可以轻松地切换月份,回顾过去的情绪变化。 - 点击单条记录卡片,可以查看完整的心情详情(包括文字和图片)。 ### 3.3. “我的”页面 - 功能: - **个人资料:** 设置昵称和头像。 - **心情统计 (未来功能):** 以图表形式(如饼图、折线图)展示一段时间内的情绪分布和变化趋势。 - **设置:** 通知、主题切换、关于我们、反馈等。 ### 4. 技术架构与实现 ### 4.1. 开发平台与技术栈 **平台选择:** Android原生开发(暂不开发iOS版本) - **最低支持版本:** Android 5.0 (API 21+) - **目标版本:** Android 13+ (API 33+) - **开发语言:** Kotlin (主) + Java (兼容) **核心技术栈:** - **UI框架:** Android Jetpack (ViewModel, LiveData, Navigation) - **动画引擎:** Lottie + Property Animation - **传感器:** Android Sensor Framework (Accelerometer) - **数据存储:** SQLite Room + SharedPreferences - **图片处理:** Glide ### 4.2. 心情值算法 (V1.0简化版) ``` 心情值 = Σ(加速度幅值) / 摇晃时间 加速度幅值 = √(x² + y² + z²) ``` **实现细节:** - **采样频率:** 50Hz (每20ms采样一次) - **最小摇晃时间:** 3秒 - **数据滤波:** 低通滤波器去除高频噪声 - **单位标准化:** 不同设备间的加速度值标准化处理 ### 4.3. 数据库设计 ```sql -- 用户配置表 CREATE TABLE user_config ( id INTEGER PRIMARY KEY, nickname TEXT, avatar_path TEXT, created_at DATETIME DEFAULT CURRENT_TIMESTAMP, updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ); -- 心情记录表 CREATE TABLE mood_records ( id INTEGER PRIMARY KEY, emotion_type TEXT NOT NULL, -- 开心/生气/悲伤/烦恼/孤单/害怕 intensity_level TEXT NOT NULL, -- 有些/非常/极度/无法控制 mood_value INTEGER NOT NULL, -- 心情值数值 note TEXT, -- 用户备注 image_path TEXT, -- 图片路径 (V1.1功能) shake_duration_ms INTEGER, -- 摇晃持续时间(毫秒) shake_data TEXT, -- 摇晃原始数据(JSON格式) created_at DATETIME DEFAULT CURRENT_TIMESTAMP ); -- 预留云端同步接口表 (V2.0) CREATE TABLE sync_queue ( id INTEGER PRIMARY KEY, record_id INTEGER, sync_status TEXT DEFAULT 'pending', created_at DATETIME DEFAULT CURRENT_TIMESTAMP ); ``` ### 4.4. 非功能性需求 - **性能:** App启动时间 < 2秒,摇晃动画延迟 < 50ms - **兼容性:** 支持Android 5.0+,覆盖95%以上Android设备 - **数据存储:** SQLite本地存储,预留云端同步接口 - **隐私:** 数据仅本地存储,明确告知用户隐私政策 - **电池优化:** 传感器使用时功耗控制,空闲时自动释放 - **权限管理:** 动态申请传感器权限,首次使用时引导用户授权 ### 5. 版本规划与迭代路线 ### 5.1. V1.0 - MVP核心功能 (当前开发版本) **必须实现功能:** - ✅ 六种基础情绪选择(开心、生气、悲伤、烦恼、孤单、害怕) - ✅ 传感器摇晃检测与心情值计算 - ✅ 小鸡2D动画响应系统 - ✅ 心情记录保存(文字+心情值) - ✅ 心情日历月视图展示 - ✅ 基础用户设置(昵称、头像) **延后功能 (V1.1+):** - ❌ 图片添加功能 - ❌ 心情统计图表 - ❌ 云端数据同步 ### 5.2. V1.1 - 功能增强版 (预计2个月后) **新增功能:** - 📷 图片添加与编辑功能 - 📊 基础心情统计(饼图、趋势图) - 🎨 更多小鸡动画效果和皮肤 - 🔔 心情记录提醒功能 - 🔧 心情值算法优化(基于用户数据) ### 5.3. V1.2 - 数据分析版 (预计6个月后) **新增功能:** - 📈 详细心情统计报告(周报/月报) - 🏷️ 标签功能与事件分类 - 📱 数据导出功能(CSV格式) - 🔄 云端数据同步选项 - 🎯 心情目标设置与追踪 ### 5.4. V2.0 - 社区与商业化 (预计1年后) **新增功能:** - 👥 匿名情绪分享社区 - 🧘 正念引导与呼吸练习 - 💎 会员体系与高级功能 - 🤖 AI心情分析与建议 - 🎁 小鸡虚拟物品与装扮系统 ### 5.5. 技术债务与优化 **持续优化项:** - 传感器算法精准度提升 - 动画性能优化 - 电池消耗优化 - 不同Android设备的兼容性测试 - 用户隐私保护增强