长者照护智能助手系统
项目概览
| 项目信息 | 详情 |
|---|---|
| 项目类型 | 移动应用(全平台) |
| 技术栈 | Flutter 3.5.4 + Firebase + DeepSeek AI |
| 目标用户 | 长者及照顾者 |
| 平台支持 | Android / iOS / Web / Windows / macOS / Linux |
| 角色 | 全栈开发 |
项目背景
随着老龄化社会的到来,长者的日常健康管理与紧急联络成为刚需。本项目旨在打造一款专为长者设计的智能照护移动应用,解决以下痛点:
- 长者健康咨询渠道有限,就医不便
- 紧急情况下的快速联络需求
- 传统APP界面复杂,长者使用困难
- 照顾者无法远程关注长者状况
核心功能
1. AI健康对话
- 集成DeepSeek大模型,支持流式响应
- 长者可用粤语或普通话咨询健康问题
- AI助手提供健康建议和就医指导
2. 极简适老界面
- 大字体设计(标题22-24px,正文18-20px)
- 高对比配色,易于辨识
- 大图标(56-72px),触控友善间距
- 简化操作流程,降低使用门槛
3. 一键紧急呼叫
- 照顾者预设紧急联系人
- 长者一键拨打,附带震动反馈
- 紧急情况快速响应
4. 双角色系统
- 区分「长者」与「照顾者」两种身份
- 通过邀请码建立绑定关系
- 照顾者可远程管理长者信息
技术架构
┌─────────────────────────────────────────────────────────────┐
│ Flutter App (6端统一) │
├─────────────────────────────────────────────────────────────┤
│ Presentation Layer │
│ ├── BLoC Pattern (状态管理) │
│ ├── go_router (路由管理) │
│ └── 适老化UI组件库 │
├─────────────────────────────────────────────────────────────┤
│ Domain Layer │
│ ├── Use Cases (业务用例) │
│ ├── Entities (领域实体) │
│ └── Repository Interfaces (仓库接口) │
├─────────────────────────────────────────────────────────────┤
│ Data Layer │
│ ├── Firebase Auth (手机号登录) │
│ ├── Cloud Firestore (数据存储) │
│ ├── DeepSeek API (AI对话) │
│ └── Local Storage (Hive/SharedPrefs) │
└─────────────────────────────────────────────────────────────┘技术选型
| 层级 | 技术选型 | 说明 |
|---|---|---|
| 前端框架 | Flutter 3.5.4+ | 跨平台统一代码 |
| 状态管理 | BLoC Pattern + Provider | 响应式状态管理 |
| 后端服务 | Firebase | Auth、Firestore、Storage |
| AI引擎 | DeepSeek API | 流式SSE响应 |
| 本地存储 | Hive、Shared Preferences | 离线数据支持 |
| 路由 | go_router 14.x | 声明式路由 |
| 架构模式 | Clean Architecture | 三层分离 |
| 依赖注入 | GetIt | 服务定位 |
| 国际化 | Flutter l10n | 粤语/普通话 |
项目结构
lib/
├── core/ # 核心基础设施
│ ├── config/ # API配置、环境变量
│ ├── constants/ # 路由名、应用常量
│ ├── error/ # 统一异常处理
│ ├── l10n/ # 国际化翻译
│ ├── services/ # 通用服务
│ ├── theme/ # 主题配置
│ └── widgets/ # 通用组件
│
├── features/ # 业务模块
│ ├── auth/ # 认证模块
│ ├── dashboard/ # 长者首页
│ ├── profile/ # 档案管理
│ ├── caregiver/ # 照顾者端
│ ├── chat/ # AI聊天
│ ├── settings/ # 设置
│ └── help/ # 帮助
│
└── main.dart # 入口项目成果
| 指标 | 说明 |
|---|---|
| 平台覆盖 | 6端统一(Android/iOS/Web/Win/Mac/Linux) |
| 适老化设计 | 大字体、高对比、简化操作 |
| AI对话 | 支持粤语/普通话双语 |
| 紧急响应 | 一键呼叫,震动反馈 |
| 用户体验 | 长者可独立使用 |
技术亮点
Clean Architecture实践
dart
// Domain层 - 用例定义
abstract class SendMessageUseCase {
Future<Either<Failure, Message>> call(SendMessageParams params);
}
// Data层 - 仓库实现
class ChatRepositoryImpl implements ChatRepository {
final ChatRemoteDataSource remoteDataSource;
final ChatLocalDataSource localDataSource;
@override
Future<Either<Failure, Message>> sendMessage(SendMessageParams params) async {
// 实现逻辑
}
}
// Presentation层 - BLoC
class ChatBloc extends Bloc<ChatEvent, ChatState> {
final SendMessageUseCase sendMessageUseCase;
// 状态管理逻辑
}流式AI对话
dart
// DeepSeek流式响应处理
Stream<String> streamChat(String message) async* {
final request = http.Request('POST', Uri.parse(apiUrl));
request.body = jsonEncode({'messages': messages});
final response = await http.Client().send(request);
await for (final chunk in response.stream.transform(utf8.decoder)) {
yield chunk; // 逐字输出
}
}经验总结
做得好的
- 架构清晰: Clean Architecture保证代码可维护性
- 适老化到位: 大字体、高对比、简化操作,长者友好
- 跨平台统一: Flutter一套代码覆盖6端
可以改进的
- 可以增加语音识别功能,进一步降低操作门槛
- 可以接入更多健康设备数据
- 可以增加社区互动功能
技术栈
- 前端: Flutter 3.5.4 (Dart SDK ^3.5.4)
- 状态管理: flutter_bloc 8.x + Provider
- 后端: Firebase (Auth、Firestore、Storage)
- AI: DeepSeek API (流式SSE)
- 本地存储: Hive、Shared Preferences
- 路由: go_router 14.x
- 架构: Clean Architecture
- DI: GetIt
本案例为毕业设计项目,展示全栈开发能力