说明书
吃药打卡App项目说明书
吃药打卡是一款面向老年用户的 Android 服药提醒工具。通过一键打卡、定时闹钟和月历统计三大核心功能,帮助家人养成规律服药的好习惯。本文详细介绍应用的各项功能和设计思路。
#### 1.1 设计理念
App 的用户群体以中老年人为主,因此设计上遵循三个原则:
1. 极简操作:核心操作只有一步——点击大按钮。不需要填写表单、不需要选择药名,打开 App 就能打卡。
2. 温暖的视觉:采用珊瑚橘作为品牌主色,搭配奶油色渐变背景和暖棕文字,传递关怀感而非冷冰冰的"工具感"。
3. 不打扰的提醒:每天只在设定时间推送一条通知,点击可跳转 App 打卡,不反复骚扰。
#### 1.2 一键打卡
打开 App,看到的是状态A页面:顶部显示时段问候语(如"☀️ 早上好,新的一天,记得按时吃药哦"),中央是一个 220dp 的珊瑚橘渐变大圆按钮,上面写着"我吃过药啦"。
点击按钮,当天日期写入 SharedPreferences,页面切换到状态B——统计卡片和打卡日历。整个过程没有任何弹窗确认,真正做到"点一下就行"。
如果用户在一天内多次打开 App,状态B会直接展示,避免重复打卡。
#### 1.3 定时提醒
在设置中(点击页面右上角齿轮图标),用户可以:
- 开关提醒:一键开启或关闭每日提醒
- 选择时间:通过系统
TimePickerDialog选择 24 小时制提醒时间
保存后,ReminderHelper 通过 AlarmManager.setExactAndAllowWhileIdle() 设置精准闹钟。即使设备处于 Doze 省电模式,闹钟也能准时触发。
到达设定时间后,ReminderReceiver 被唤醒,依次执行:
1. 弹出通知栏提醒(标题"吃药提醒",内容"今天吃药了吗?")
2. 自动为明天重新调度闹钟(rescheduleIfNeeded)
点击通知直接跳转 App,方便用户打卡。
#### 1.4 开机自动恢复
BootReceiver 监听系统 BOOT_COMPLETED 广播。设备重启后,如果用户之前已开启提醒,自动调用 ReminderHelper.rescheduleIfNeeded() 重新设置闹钟,不会因为重启而漏掉提醒。
#### 1.5 统计与日历
状态B页面上方有三个统计卡片:
| 统计项 | 含义 |
|---|---|
| 🔥 连续打卡 | 从今天往回数,连续打卡的天数 |
| 📅 本月打卡 | 本月已打卡天数 / 本月总天数 |
| 📊 累计打卡 | 历史总计打卡天数 |
下方是一个可切换月份的日历网格,每个日期用不同圆形背景区分状态:
- 今天已打卡:实心珊瑚色圆 + 白色数字
- 历史已打卡:浅蜜桃色圆 + 深色数字
- 今天未打卡:琥珀色圆环 + 橙色粗体数字
- 未来日期:浅灰色文字
- 过去未打卡:普通灰色文字
底部提示文字根据当前状态动态变化("今天已按时服药,为自己点个赞 👍" / "今天还没打卡,记得吃药哦")。