[{"data":1,"prerenderedAt":710},["ShallowReactive",2],{"project-yikang-health-manager":3},{"id":4,"title":5,"body":6,"date":699,"description":700,"extension":701,"meta":702,"navigation":703,"path":704,"seo":705,"stem":706,"summary":707,"tech_stack":708,"__hash__":709},"projects\u002Fprojects\u002Fyikang-health-manager.md","宜康管家 - 手绘风服药提醒与血压监测",{"type":7,"value":8,"toc":670},"minimark",[9,14,19,44,66,69,73,77,91,94,123,125,129,132,278,281,291,293,297,301,306,314,319,348,353,364,368,392,396,427,431,453,455,459,462,465,537,540,574,576,580,583,594,597,612,615,626,628,632,668],[10,11,13],"h1",{"id":12},"宜康管家控压-手绘风服药提醒与血压监测","宜康管家（控压）— 手绘风服药提醒与血压监测",[15,16,18],"h2",{"id":17},"一项目概述","一、项目概述",[20,21,22,23,27,28,31,32,35,36,39,40,43],"p",{},"高血压患者需要长期按时服药并定期监测血压，但市面上多数健康管理应用界面冰冷、操作复杂，且服药提醒不够精确（依赖 JS 定时器，App 被杀后失效）。",[24,25,26],"strong",{},"宜康管家（控压）"," 是一款面向高血压患者的手绘风格健康管家应用，以",[24,29,30],{},"智能服药提醒","和",[24,33,34],{},"血压监测记录","为核心功能，在 Android 端使用",[24,37,38],{},"原生 AlarmManager 精确闹钟","确保提醒不遗漏，UI 采用独特的",[24,41,42],{},"手绘美学","设计，让健康管理更有温度。",[45,46,47,54,60],"ul",{},[48,49,50,53],"li",{},[24,51,52],{},"项目形态","：原生移动应用（Android 主力 + iOS + HarmonyOS）",[48,55,56,59],{},[24,57,58],{},"核心能力","：智能服药提醒（原生闹钟）、血压等级监测、服药历史追踪、完全离线使用",[48,61,62,65],{},[24,63,64],{},"适用场景","：高血压及慢性病患者日常服药管理与血压监测",[67,68],"hr",{},[15,70,72],{"id":71},"二业务痛点与目标","二、业务痛点与目标",[74,75,76],"h3",{"id":76},"痛点",[45,78,79,82,85,88],{},[48,80,81],{},"慢性病患者需长期按时服药，但常因遗忘或外出导致漏服",[48,83,84],{},"普通提醒类 App 依赖 JS 定时器，App 被系统杀死后提醒失效",[48,86,87],{},"血压数据记录分散，缺乏等级分类与可视化呈现",[48,89,90],{},"医疗类应用界面过于冰冷，老年用户使用门槛高",[74,92,93],{"id":93},"目标",[45,95,96,103,110,117],{},[48,97,98,99,102],{},"实现",[24,100,101],{},"可靠的服药提醒","，即使 App 不在前台也能准时提醒",[48,104,105,106,109],{},"提供",[24,107,108],{},"血压等级分类","（正常\u002F正常高值\u002F1-3级高血压），帮助患者自我评估",[48,111,112,113,116],{},"采用",[24,114,115],{},"手绘风格 UI","，降低使用门槛，提升亲和力",[48,118,119,122],{},[24,120,121],{},"完全离线运行","，无需注册、无需联网，保护用户隐私",[67,124],{},[15,126,128],{"id":127},"三技术方案与架构","三、技术方案与架构",[74,130,131],{"id":131},"技术栈",[133,134,135,151],"table",{},[136,137,138],"thead",{},[139,140,141,145,148],"tr",{},[142,143,144],"th",{},"层级",[142,146,147],{},"技术",[142,149,150],{},"说明",[152,153,154,168,185,198,213,226,239,252,265],"tbody",{},[139,155,156,162,165],{},[157,158,159],"td",{},[24,160,161],{},"跨平台框架",[157,163,164],{},"uni-app x (DCloud)",[157,166,167],{},"支持 Android \u002F iOS \u002F HarmonyOS",[139,169,170,175,178],{},[157,171,172],{},[24,173,174],{},"前端框架",[157,176,177],{},"Vue 3（Composition API）",[157,179,180,184],{},[181,182,183],"code",{},"\u003Cscript setup>"," 模式",[139,186,187,192,195],{},[157,188,189],{},[24,190,191],{},"开发语言",[157,193,194],{},"UTS (TypeScript 方言)",[157,196,197],{},"uni-app x 原生开发语言",[139,199,200,205,210],{},[157,201,202],{},[24,203,204],{},"模板格式",[157,206,207],{},[181,208,209],{},".uvue",[157,211,212],{},"uni-app x Vue 单文件组件",[139,214,215,220,223],{},[157,216,217],{},[24,218,219],{},"样式方案",[157,221,222],{},"SCSS + 手绘主题",[157,224,225],{},"不均匀圆角 + 粗边框 + 投影",[139,227,228,233,236],{},[157,229,230],{},[24,231,232],{},"原生插件",[157,234,235],{},"yk-native-alarm (UTS)",[157,237,238],{},"Android AlarmManager 精确闹钟",[139,240,241,246,249],{},[157,242,243],{},[24,244,245],{},"本地存储",[157,247,248],{},"uni.getStorageSync \u002F setStorageSync",[157,250,251],{},"完全离线数据持久化",[139,253,254,259,262],{},[157,255,256],{},[24,257,258],{},"构建工具",[157,260,261],{},"Vite + @dcloudio\u002Fvite-plugin-uni",[157,263,264],{},"HBuilderX 管理",[139,266,267,272,275],{},[157,268,269],{},[24,270,271],{},"图标方案",[157,273,274],{},"jk-icon (iconify)",[157,276,277],{},"Material Design Icons 自定义字体",[74,279,280],{"id":280},"项目组织",[282,283,288],"pre",{"className":284,"code":286,"language":287},[285],"language-text","宜康管家\u002F\n├── pages\u002F                         # 5 个应用页面\n│   ├── index\u002Findex.uvue           # 首页 — 今日用药列表 + 状态切换\n│   ├── add-medicine\u002Fadd-medicine.uvue  # 添加\u002F编辑药品表单\n│   ├── detail\u002Fdetail.uvue         # 药品详情（倒计时 + 7天历史）\n│   ├── records\u002Frecords.uvue       # 血压记录（测量 + 历史）\n│   └── mine\u002Fmine.uvue            # \"我的\" 页面（关于 + 使用说明）\n├── components\u002F                    # 可复用组件\n│   ├── TabBar\u002FTabBar.uvue         # 底部导航栏（首页\u002F记录\u002F我的）\n│   ├── TimePicker\u002FTimePicker.uvue # 时间选择器（AM\u002FPM + 小时\u002F分钟网格）\n│   └── FrequencyPicker\u002FFrequencyPicker.uvue  # 频率选择器（每日\u002F自定义星期）\n├── utils\u002F                         # 工具模块\n│   ├── storage.uts                # 数据持久化（药品、历史、血压记录）\n│   ├── frequency.uts              # 频率解析与校验\n│   ├── NotificationService.uts    # 核心提醒引擎（JS + 原生双方案）\n│   └── platform-notification\u002F     # 平台专属通知\n│       ├── android.uts            # Android 原生闹钟调度\n│       └── ios.uts                # iOS push 消息调度\n├── uni_modules\u002F\n│   ├── yk-native-alarm\u002F           # 自定义 UTS 原生 Android 闹钟插件\n│   └── jk-icon\u002F                   # 自定义图标字体生成器\n└── static\u002F                        # 静态资源 + 字体文件\n","text",[181,289,286],{"__ignoreMap":290},"",[67,292],{},[15,294,296],{"id":295},"四核心功能实现","四、核心功能实现",[74,298,300],{"id":299},"_1智能服药提醒双引擎架构","1）智能服药提醒（双引擎架构）",[20,302,303],{},[24,304,305],{},"JS 引擎（通用兜底）：",[45,307,308,311],{},[48,309,310],{},"30 秒轮询间隔 + 每个药品独立的 setTimeout 调度",[48,312,313],{},"适用于非 Android 平台或非\"每日1次\"的提醒场景",[20,315,316],{},[24,317,318],{},"Android 原生引擎（精确可靠）：",[45,320,321,328,335,338,345],{},[48,322,323,324,327],{},"使用 ",[181,325,326],{},"AlarmManager.setAlarmClock()"," 设置精确系统闹钟，App 被杀后仍可触发",[48,329,330,331,334],{},"自定义 ",[181,332,333],{},"BroadcastReceiver","（MedicineAlarmReceiver）接收闹钟广播并发送通知",[48,336,337],{},"5 分钟间隔重复提醒，持续 30 分钟，直到用户响应",[48,339,340,341,344],{},"监听 ",[181,342,343],{},"BOOT_COMPLETED"," 广播，设备重启后自动恢复所有闹钟",[48,346,347],{},"Android 12+ 自动检查并请求精确闹钟权限",[20,349,350],{},[24,351,352],{},"通知交互：",[45,354,355,358,361],{},[48,356,357],{},"点击\"已服\"：取消今日所有重复提醒，安排明日闹钟",[48,359,360],{},"点击\"稍后\"：清除重复提醒，10 分钟后发送新提醒",[48,362,363],{},"点击\"待服\"：重置状态为待处理，恢复提醒",[74,365,367],{"id":366},"_2今日用药管理","2）今日用药管理",[45,369,370,373,376,389],{},[48,371,372],{},"根据频率规则和当天星期过滤展示今日用药",[48,374,375],{},"每个药品卡片展示：时间（24h + AM\u002FPM）、药名、剂量、状态徽章",[48,377,378,379,382,383,382,386],{},"状态三态切换：",[24,380,381],{},"待服"," → ",[24,384,385],{},"已服",[24,387,388],{},"稍后",[48,390,391],{},"支持 FAB 浮动按钮快速添加药品",[74,393,395],{"id":394},"_3血压监测与等级分类","3）血压监测与等级分类",[45,397,398,401,421,424],{},[48,399,400],{},"输入收缩压（30-300）、舒张压（10-200）、心率（20-300），含范围校验",[48,402,403,404],{},"自动按中国高血压防治指南分级，颜色编码展示：\n",[45,405,406,409,412,415,418],{},[48,407,408],{},"🟢 正常（\u003C120\u002F80）",[48,410,411],{},"🟡 正常高值（120-139\u002F80-89）",[48,413,414],{},"🟠 1级高血压（140-159\u002F90-99）",[48,416,417],{},"🔴 2级高血压（160-179\u002F100-109）",[48,419,420],{},"⭕ 3级高血压（≥180\u002F110）",[48,422,423],{},"最近一次测量大号卡片突出显示",[48,425,426],{},"最多存储 30 条历史记录，最新优先",[74,428,430],{"id":429},"_4药品详情与服药历史","4）药品详情与服药历史",[45,432,433,436,450],{},[48,434,435],{},"下次服药倒计时动态计算（\"X小时 Y分钟\"）",[48,437,438,439],{},"7 天服药历史视图，颜色编码：\n",[45,440,441,444,447],{},[48,442,443],{},"红色 = 已服（✓ 图标）",[48,445,446],{},"黄色 = 今天（○ 图标）",[48,448,449],{},"灰色 = 错过\u002F跳过（✗ 图标）",[48,451,452],{},"编辑和删除药品功能",[67,454],{},[15,456,458],{"id":457},"五设计系统-手绘风格","五、设计系统 — 手绘风格",[20,460,461],{},"项目采用独特的手绘风格设计，打破医疗类应用的冰冷感：",[74,463,464],{"id":464},"配色",[133,466,467,479],{},[136,468,469],{},[139,470,471,474,477],{},[142,472,473],{},"用途",[142,475,476],{},"颜色",[142,478,150],{},[152,480,481,494,511,524],{},[139,482,483,486,491],{},[157,484,485],{},"背景",[157,487,488],{},[181,489,490],{},"#fdfbf7",[157,492,493],{},"暖米白色",[139,495,496,499,508],{},[157,497,498],{},"卡片",[157,500,501,504,505],{},[181,502,503],{},"#ffffff"," \u002F ",[181,506,507],{},"#fff9c4",[157,509,510],{},"白色 \u002F 暖黄色",[139,512,513,516,521],{},[157,514,515],{},"主色",[157,517,518],{},[181,519,520],{},"#ff4d4d",[157,522,523],{},"红色 — 行动按钮、已服状态",[139,525,526,529,534],{},[157,527,528],{},"边框",[157,530,531],{},[181,532,533],{},"#2d2d2d",[157,535,536],{},"深灰粗边框",[74,538,539],{"id":539},"手绘特征",[45,541,542,552,565],{},[48,543,544,547,548,551],{},[24,545,546],{},"不均匀圆角","：卡片 ",[181,549,550],{},"18rpx 6rpx 18rpx 6rpx","，模拟手绘不规则感",[48,553,554,557,558,561,562],{},[24,555,556],{},"粗边框 + 偏移投影","：",[181,559,560],{},"border: 3rpx solid #2d2d2d"," + ",[181,563,564],{},"box-shadow: 8rpx 8rpx 0 0 #2d2d2d",[48,566,567,570,571],{},[24,568,569],{},"手写字体","：标题使用 ",[181,572,573],{},"font-family: cursive, sans-serif",[67,575],{},[15,577,579],{"id":578},"六项目亮点","六、项目亮点",[74,581,582],{"id":582},"可靠性",[45,584,585,588,591],{},[48,586,587],{},"Android 端使用原生 AlarmManager 精确闹钟，即使 App 不在前台也能准时提醒",[48,589,590],{},"设备重启后自动恢复所有闹钟，确保提醒不丢失",[48,592,593],{},"基于 SharedPreferences 去重，防止重复安排",[74,595,596],{"id":596},"隐私性",[45,598,599,602,609],{},[48,600,601],{},"完全离线运行，无需注册、无需联网",[48,603,604,605,608],{},"所有数据通过 ",[181,606,607],{},"uni.setStorageSync"," 本地存储",[48,610,611],{},"无远程推送、无数据上报",[74,613,614],{"id":614},"体验感",[45,616,617,620,623],{},[48,618,619],{},"手绘风格 UI 降低使用门槛，亲和力强",[48,621,622],{},"三态状态切换（待服\u002F已服\u002F稍后）交互简洁",[48,624,625],{},"血压等级颜色编码，一目了然",[67,627],{},[15,629,631],{"id":630},"七可扩展与复盘","七、可扩展与复盘",[45,633,634,644,650,656,662],{},[48,635,636,639,640,643],{},[24,637,638],{},"iOS 原生提醒","：当前 iOS 使用 ",[181,641,642],{},"uni.createPushMessage"," 延迟调度，后续可开发原生 UTS 插件实现更精确的本地通知",[48,645,646,649],{},[24,647,648],{},"数据导出","：支持将血压记录导出为 PDF\u002FExcel，方便就医时提供",[48,651,652,655],{},[24,653,654],{},"趋势图表","：增加血压趋势折线图，帮助患者观察长期变化",[48,657,658,661],{},[24,659,660],{},"家人共享","：通过局域网或蓝牙实现家属端同步查看老人用药与血压状态",[48,663,664,667],{},[24,665,666],{},"鸿蒙原生","：适配 HarmonyOS NEXT 原生开发",[67,669],{},{"title":290,"searchDepth":671,"depth":671,"links":672},3,[673,675,679,683,689,693,698],{"id":17,"depth":674,"text":18},2,{"id":71,"depth":674,"text":72,"children":676},[677,678],{"id":76,"depth":671,"text":76},{"id":93,"depth":671,"text":93},{"id":127,"depth":674,"text":128,"children":680},[681,682],{"id":131,"depth":671,"text":131},{"id":280,"depth":671,"text":280},{"id":295,"depth":674,"text":296,"children":684},[685,686,687,688],{"id":299,"depth":671,"text":300},{"id":366,"depth":671,"text":367},{"id":394,"depth":671,"text":395},{"id":429,"depth":671,"text":430},{"id":457,"depth":674,"text":458,"children":690},[691,692],{"id":464,"depth":671,"text":464},{"id":539,"depth":671,"text":539},{"id":578,"depth":674,"text":579,"children":694},[695,696,697],{"id":582,"depth":671,"text":582},{"id":596,"depth":671,"text":596},{"id":614,"depth":671,"text":614},{"id":630,"depth":674,"text":631},"2025-05","基于 uni-app x 的手绘风格健康管家应用，支持服药提醒与血压监测","md",{},true,"\u002Fprojects\u002Fyikang-health-manager",{"title":5,"description":700},"projects\u002Fyikang-health-manager","面向高血压患者的移动健康应用，核心功能为智能服药提醒与血压监测记录。采用 uni-app x + Vue 3 + UTS 构建，Android 端使用原生 AlarmManager 精确闹钟，UI 采用独特手绘风格设计，完全离线本地存储。","uni-app x, Vue 3, UTS, Android AlarmManager, SCSS","UI9AhDZyltzDkyRvzjsfLy1ubmTUmOhxrRLRs62z06M",1780651452084]