Commit Graph

232 Commits

Author SHA1 Message Date
richarjiang
9bcea25a2f feat(auth): 为未登录用户添加登录引导界面
为目标页面、营养记录、食物添加等功能添加登录状态检查和引导界面,确保用户在未登录状态下能够获得清晰的登录提示和指引。

- 在目标页面添加精美的未登录引导界面,包含渐变背景和登录按钮
- 为食物记录相关组件添加登录状态检查,未登录时自动跳转登录页面
- 重构血氧饱和度卡片为独立数据获取,移除对外部数据依赖
- 移除个人页面的实验性SwiftUI组件,统一使用原生TouchableOpacity
- 清理统计页面和营养记录页面的冗余代码和未使用变量
2025-09-19 15:52:24 +08:00
richarjiang
ccfccca7bc feat(health): 完善HealthKit权限管理和数据获取系统
- 重构权限管理,新增SimpleEventEmitter实现状态监听
- 实现完整的健身圆环数据获取(活动热量、锻炼时间、站立小时)
- 优化组件状态管理,支持实时数据刷新和权限状态响应
- 新增useHealthPermissions Hook,简化权限状态管理
- 完善iOS原生代码,支持按小时统计健身数据
- 优化应用启动时权限初始化流程,避免启动弹窗

BREAKING CHANGE: FitnessRingsCard组件API变更,移除手动传参改为自动获取数据
2025-09-19 14:16:11 +08:00
184fb672b7 perf: 完善接口 2025-09-18 22:40:05 +08:00
richarjiang
2c382ab8de feat: 支持新接口 2025-09-18 16:27:11 +08:00
richarjiang
6f0c872223 feat: 支持原生模块健康数据 2025-09-18 09:51:37 +08:00
richarjiang
6b7776e51d feat: 支持 healthkit 2025-09-17 18:05:11 +08:00
richarjiang
63ed820e93 feat(ui): 统一健康卡片标题图标并优化语音录音稳定性
- 为所有健康数据卡片添加对应功能图标,提升视觉一致性
- 将“小鱼干”文案统一为“能量值”,并更新获取说明
- 语音录音页面增加组件卸载保护、错误提示与资源清理逻辑
- 个人页支持毛玻璃按钮样式,默认用户名置空
- 新增血氧、饮食、心情、压力、睡眠、步数、体重等图标资源
- 升级 react-native-purchases 至 9.4.3
- 移除 useAuthGuard 调试日志
2025-09-16 09:35:50 +08:00
richarjiang
42b6b2076c fix 2025-09-15 19:28:13 +08:00
richarjiang
281149201b feat(personal): 持久化开发者模式状态并优化登录后数据加载
- 新增 kv-store 持久化开发者模式开关,避免每次冷启动丢失
- 登录成功后立即拉取用户资料,减少首页空数据闪烁
- 修复体重卡片在未登录时重复请求的问题
- 移除 ActivityHeatMap 与 userSlice 中的调试日志
- useAuthGuard 增加 token 调试输出(临时)
2025-09-15 16:24:38 +08:00
richarjiang
2357596665 refactor(storage): 迁移 AsyncStorage 至 expo-sqlite/kv-store
- 统一替换所有 @react-native-async-storage/async-storage 导入为自定义 kvStore
- 新增 kvStore.ts 封装 expo-sqlite/kv-store,保持与 AsyncStorage 完全兼容
- 新增同步读写方法,提升性能
- 引入 expo-sqlite 依赖并更新 lock 文件

BREAKING CHANGE: 移除 @react-native-async-storage/async-storage 依赖,需重新安装依赖并清理旧数据
2025-09-15 12:51:18 +08:00
richarjiang
91df01bd79 feat(auth): 预加载用户数据并优化登录状态同步
- 在启动屏预加载用户 token 与资料,避免首页白屏
- 新增 rehydrateUserSync 同步注入 Redux,减少异步等待
- 登录页兼容 ERR_REQUEST_CANCELED 取消场景
- 各页面统一依赖 isLoggedIn 判断,移除冗余控制台日志
- 步数卡片与详情页改为实时拉取健康数据,不再缓存至 Redux
- 后台任务注册移至顶层,防止重复定义
- 体重记录、HeaderBar 等 UI 细节样式微调
2025-09-15 09:56:42 +08:00
55d133c470 feat: 更新 UI 样式以及消息通知 2025-09-14 21:41:33 +08:00
24b144a0d1 perf: 优化 logo 2025-09-13 10:12:49 +08:00
a9bb73e2a1 fix 2025-09-12 23:01:03 +08:00
ab87bddd51 fix: 修复压力数据 2025-09-12 22:51:14 +08:00
richarjiang
4627cb650e feat(ui): 更新应用图标和启动屏幕为新品牌标识并调整相关配置
更新应用图标、启动屏幕和相关配置以匹配新品牌标识,移除旧的 Sealife 图标文件并替换为新的 icon.icon 资源。同时更新 iOS 配置中的背景任务标识符以符合命名规范。调整统计页面头部 logo 尺寸和字体粗细以优化视觉效果。

- 替换所有平台的应用图标和启动图资源
- 更新 app.json、Info.plist 和各 imageset 配置文件
- 调整 statistics.tsx 中的 logo 样式
- 移除已废弃的腾讯云 COS 文档
2025-09-12 17:07:40 +08:00
richarjiang
edac180dd6 feat(health): 统一使用共享的HealthKit权限初始化方法并简化配置
将sleepHealthKit模块中的HealthKit权限初始化逻辑替换为使用health工具中的通用ensureHealthPermissions方法,移除重复的权限配置代码。同时更新后台任务标识符以保持一致性。
2025-09-12 15:54:33 +08:00
richarjiang
1b76cc305a feat(ui): 实现原生标签页与玻璃效果按钮组件
引入 NativeTabs 替代默认 Tabs 以支持原生标签栏样式,并添加 GlassButton 组件实现毛玻璃效果按钮。
移除对 useBottomTabBarHeight 的依赖,统一使用固定底部间距 60。
重构头像上传逻辑,使用新的 uploadImage API 替代 COS 直传方案。
更新 expo-router 至 ~6.0.1 版本以支持不稳定特性。
2025-09-12 15:48:58 +08:00
richarjiang
a84c026599 feat(ui): 更新应用品牌名称为 Out Live 并优化睡眠详情页默认数据展示
- 将 Sealife 更名为 Out Live(登录页、隐私弹窗)
- 睡眠详情页无数据时显示 "--" 替代固定默认值
- 移除睡眠阶段卡片中的质量标签与总览徽章
- 修复体重历史卡片依赖监听字段与跳转路由
- 调整喝水提醒后台任务时间范围为 8-21 点
- 标签栏按钮新增 activeOpacity=1 禁用点击透明度变化
2025-09-12 09:59:01 +08:00
1af0945a2f feat: 支持 glass 2025-09-11 23:25:56 +08:00
dfe9506a7a feat: 支持 expo 44 版本 2025-09-11 23:00:24 +08:00
0cb7e67b5e feat: 更新依赖项版本并添加新的UI库 2025-09-11 22:35:35 +08:00
richarjiang
3a4a55b78e feat: 新增语音记录饮食功能与开发者调试模块
- 集成 @react-native-voice/voice 实现中文语音识别,支持“一句话记录”餐食
- 新增语音录制页面,含波形动画、音量反馈与识别结果确认
- FloatingFoodOverlay 新增语音入口,打通拍照/库/语音三种记录方式
- 添加麦克风与语音识别权限描述(iOS Info.plist 与 Android manifest)
- 实现开发者模式:连续三次点击用户名激活,含日志查看、导出与清除
- 新增 logger 工具类,统一日志存储(AsyncStorage)与按级别输出
- 重构 BackgroundTaskManager 为单例并支持 Promise 初始化,避免重复注册
- 移除 sleep-detail 多余渐变背景,改用 ThemedView 统一主题
- 新增通用 haptic 反馈函数,支持多种震动类型(iOS only)
- 升级 expo-background-task、expo-notifications、expo-task-manager 至兼容版本
2025-09-11 19:11:09 +08:00
richarjiang
35d6b74451 feat(widget): 增强Widget数据同步机制并优化UI设计
- 在useWaterData中统一处理数据变更后的Widget同步逻辑
- 新增数组类型数据存取方法支持更复杂数据结构
- 重构Widget UI为圆形进度条设计,提升视觉体验
- 修复数据同步时可能存在的竞态条件问题
- 优化错误处理,确保Widget同步失败不影响主功能
2025-09-11 10:38:54 +08:00
richarjiang
62690ee3fc refactor(sleep): 重构睡眠数据获取逻辑,移除冗余代码并优化组件结构
- 从 healthSlice 和 health.ts 中移除 sleepDuration 字段及相关获取逻辑
- 将 SleepCard 改为按需异步获取睡眠数据,支持传入指定日期
- 睡眠详情页改为通过路由参数接收日期,支持查看历史记录
- 移除 statistics 页面对 sleepDuration 的直接依赖,统一由 SleepCard 管理
- 删除未使用的 SleepStageChart 组件,简化页面结构
2025-09-11 09:08:51 +08:00
richarjiang
aee87e8900 fix: 调整睡眠阶段图表的宽度和边距,优化标签显示逻辑 2025-09-10 19:20:05 +08:00
richarjiang
6fbdbafa3e feat: 添加睡眠阶段时间轴组件,优化睡眠数据可视化 2025-09-10 19:03:34 +08:00
98176ee988 Refactor iOS dependencies and update HealthKit integration
- Removed NitroModules and ReactNativeHealthkit from Podfile.lock and package files.
- Updated Info.plist to increment app version from 2 to 3.
- Refactored background task manager to define background tasks within the class.
- Added new utility file for sleep data management, including fetching sleep samples, calculating sleep statistics, and generating sleep quality scores.
2025-09-09 23:16:54 +08:00
b0c572c1d4 feat: 重构睡眠详情模块,扩展数据类型并引入独立组件以优化代码结构 2025-09-09 22:12:12 +08:00
richarjiang
a7f5379d5a feat: Update Podfile.lock to include NitroModules and ReactNativeHealthkit dependencies
fix: Adjust objectVersion in project.pbxproj and improve WaterWidget folder exception handling

refactor: Remove sleepService.ts as part of code cleanup

chore: Comment out HealthKit initialization in health.ts and clean up fetchSleepDuration function
2025-09-09 19:27:19 +08:00
richarjiang
6daf9500fc feat: 添加原始睡眠数据列表,优化睡眠详情数据处理逻辑,确保完整的睡眠周期计算 2025-09-09 16:20:11 +08:00
richarjiang
e56ebe3636 feat: 完善饮水 widget 2025-09-09 14:26:16 +08:00
richarjiang
cacfde064f feat: 优化睡眠数据 2025-09-09 10:01:11 +08:00
richarjiang
9ccd15319e feat: 在食物库页面中集成每日营养数据刷新功能,优化饮食记录成功后的用户体验;移除营养目标计算逻辑以简化组件 2025-09-09 08:31:32 +08:00
richarjiang
1de4b9fe4c feat: 更新睡眠详情页面,集成真实睡眠数据生成逻辑,优化睡眠阶段图表展示,添加睡眠样本数据处理功能,提升用户体验 2025-09-08 19:26:02 +08:00
richarjiang
bf3304eb06 feat: 优化提醒注册逻辑,确保用户姓名存在时注册午餐、晚餐和心情提醒;更新睡眠详情页面,添加清醒时间段的判断和模拟数据展示;调整样式以提升用户体验 2025-09-08 17:45:30 +08:00
richarjiang
f9a175d76c feat: 更新睡眠详情页面,添加睡眠等级和信息模态框组件,优化统计卡片样式,移除测试通知功能 2025-09-08 10:09:39 +08:00
richarjiang
e91283fe4e feat: 添加睡眠详情页面,集成睡眠数据获取功能,优化健康数据权限管理,更新相关组件以支持睡眠统计和展示 2025-09-08 09:54:33 +08:00
df7f04808e feat: 添加测试通知功能以验证后台任务执行,记录通知发送时间 2025-09-07 10:09:08 +08:00
aaa34a7a07 feat: 更新应用名称为“Out Live”,删除推送通知使用指南和喝水记录API修复测试文档,优化饮水设置页面,添加登录状态检查 2025-09-07 10:03:37 +08:00
2e7daae519 feat: 更新健康数据权限描述,添加HRV数据获取测试功能,优化后台任务配置,调整压力计显示单位 2025-09-06 16:34:56 +08:00
2df747109c feat: 优化体重记录页面,使用useCallback提升加载历史记录性能,调整样式以支持深色模式 2025-09-05 23:01:34 +08:00
8d6a848918 feat: 更新心情编辑页面,优化心情描述输入框,增加日记标题和副标题,调整样式和布局,提升用户体验;修改MoodIntensitySlider组件,优化滑块样式和交互效果 2025-09-05 22:56:00 +08:00
c37c3a16b1 feat: 优化统计和步数详情页面,添加活动等级计算和展示,更新压力计组件以支持HRV值直接显示 2025-09-05 22:28:04 +08:00
e6708e68c2 feat: 集成expo-background-task和expo-task-manager,重构后台任务管理,添加健康提醒功能,优化任务执行逻辑 2025-09-05 22:07:29 +08:00
3c416545db feat: 添加最大心率功能,更新用户资料编辑页面以显示最大心率数据,优化相关组件和服务 2025-09-05 21:58:46 +08:00
richarjiang
aee291bb69 feat: 添加快捷动作功能,支持快速记录饮水量,更新相关配置和服务 2025-09-05 17:17:22 +08:00
richarjiang
6af86800f2 更新依赖项版本,优化后台任务管理器,添加后台任务自动启动功能,调整后台获取配置,移除冗余代码 2025-09-05 16:52:00 +08:00
richarjiang
8d71d751d6 feat: 添加饮水设置页面,支持每日饮水目标和快速添加默认值的配置 2025-09-05 16:31:52 +08:00
richarjiang
83805a4b07 feat: Refactor MoodCalendarScreen to use dayjs for date handling and improve calendar data generation
feat: Update FitnessRingsCard to navigate to fitness rings detail page on press

feat: Modify NutritionRadarCard to enhance UI and add haptic feedback on actions

feat: Add FITNESS_RINGS_DETAIL route for navigation

fix: Adjust minimum fetch interval in BackgroundTaskManager for background tasks

feat: Implement haptic feedback utility functions for better user experience

feat: Extend health permissions to include Apple Exercise Time and Apple Stand Time

feat: Add functions to fetch hourly activity, exercise, and stand data for improved health tracking

feat: Enhance user preferences to manage fitness exercise minutes and active hours info dismissal
2025-09-05 15:32:34 +08:00