265 lines
11 KiB
Markdown
265 lines
11 KiB
Markdown
**版本: 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设备的兼容性测试
|
||
- 用户隐私保护增强
|