richarjiang
|
f43cfe7ac6
|
fix(ios): 修复HealthKit类型安全性并优化HRV通知频率
将HealthKit数据类型从强制解包改为可选类型,避免潜在的运行时崩溃。所有数据类型访问现在都通过guard语句进行安全检查,当类型不可用时返回明确的错误信息。同时修复了活动摘要日期计算错误,确保每个摘要使用正确的日期。
HRV压力通知的最小间隔从4小时缩短至2小时,并移除了每日一次的限制,允许更及时的压力状态提醒。
BREAKING CHANGE: HealthKit数据类型API现在可能返回"TYPE_NOT_AVAILABLE"错误,调用方需要处理此新错误类型
|
2025-11-19 09:23:42 +08:00 |
|
richarjiang
|
9d424c7bd2
|
feat(auth): 添加401未授权统一处理机制
- 在API服务层实现401状态码的统一拦截和处理
- 添加防抖机制,避免短时间内重复处理401错误
- 支持应用层注册自定义的未授权处理器
- 在应用启动时注册401处理器,自动清除登录状态并跳转到登录页
- 同时处理普通请求和流式请求的401响应
|
2025-11-18 15:59:47 +08:00 |
|
richarjiang
|
21e57634e0
|
feat(hrv): 添加心率变异性监控和压力评估功能
- 新增 HRV 监听服务,实时监控心率变异性数据
- 实现 HRV 到压力指数的转换算法和压力等级评估
- 添加智能通知服务,在压力偏高时推送健康建议
- 优化日志系统,修复日志丢失问题并增强刷新机制
- 改进个人页面下拉刷新,支持并行数据加载
- 优化勋章数据缓存策略,减少不必要的网络请求
- 重构应用初始化流程,优化权限服务和健康监听服务的启动顺序
- 移除冗余日志输出,提升应用性能
|
2025-11-18 14:08:20 +08:00 |
|
|
|
3f21f521ea
|
feat(initialize): 优化权限和健康监听服务的初始化流程,增加延迟和错误处理
fix(version): 更新应用版本号至1.0.26
feat(sleep): 增加睡眠阶段统计的准确性,优化日志输出
|
2025-11-17 21:24:59 +08:00 |
|
|
|
3a312d396e
|
fix(medications): 降低相机图片质量以优化性能
fix(ios): 降低项目对象版本以兼容性调整
chore(ios): 更新 Info.plist 版本号
chore(ios): 更新 Podfile.lock 以反映依赖项变更
|
2025-11-15 23:27:36 +08:00 |
|
richarjiang
|
705d921c14
|
feat(badges): 添加勋章系统和展示功能
实现完整的勋章系统,包括勋章列表展示、自动弹窗展示和分享功能。
- 新增勋章列表页面,支持已获得和待解锁勋章的分类展示
- 在个人中心添加勋章预览模块,显示前3个勋章和总数统计
- 实现勋章展示弹窗,支持动画效果和玻璃态UI
- 添加勋章分享功能,可生成分享卡片
- 新增 badgesSlice 管理勋章状态,包括获取、排序和计数逻辑
- 添加勋章服务 API 封装,支持获取勋章列表和标记已展示
- 完善中英文国际化文案
|
2025-11-14 17:17:17 +08:00 |
|
richarjiang
|
8cffbb990a
|
refactor(init): 优化应用初始化流程,将权限请求延迟到引导完成后
- 将服务初始化拆分为基础服务和权限相关服务两个阶段
- 基础服务(用户数据、HealthKit初始化、快捷动作等)在应用启动时立即执行
- 权限相关服务(通知、HealthKit权限请求)仅在用户完成引导流程后才执行
- 在Redux store中添加onboardingCompleted状态管理
- 引导页面完成时通过Redux更新状态而非直接操作AsyncStorage
- 启动页面从预加载数据中读取引导完成状态,避免重复读取存储
- 使用ref防止权限服务重复初始化
|
2025-11-14 14:10:52 +08:00 |
|
richarjiang
|
7bd0b5fc52
|
# 方案总结
基于提供的 Git diff,我将生成以下 conventional commit message:
## 变更分析:
1. **核心功能**:
- 新增睡眠监控服务(`services/sleepMonitor.ts`)
- 新增睡眠通知服务(`services/sleepNotificationService.ts`)
- iOS 原生端增加睡眠观察者方法
2. **应用启动优化**:
- 重构 `app/_layout.tsx` 中的初始化流程,按优先级分阶段加载服务
3. **药品功能改进**:
- 优化语音识别交互(实时预览、可取消)
- Widget 增加 URL scheme 支持
4. **路由配置**:
- 新增药品管理路由常量
## 提交信息类型:
- **主类型**:`feat` (新增睡眠监控功能)
- **作用域**:`health` (健康相关功能)
---
请确认方案后,我将生成最终的 commit message。
---
**最终 Commit Message:**
feat(health): 添加睡眠监控和通知服务,优化应用启动流程
- 新增睡眠监控服务,支持实时监听 HealthKit 睡眠数据更新
- 实现睡眠质量分析算法,计算睡眠评分和各阶段占比
- 新增睡眠通知服务,分析完成后自动推送质量评估和建议
- iOS 原生端实现睡眠数据观察者,支持后台数据传递
- 重构应用启动初始化流程,按优先级分阶段加载服务(关键/次要/后台/空闲)
- 优化药品录入页面语音识别交互,支持实时预览和取消操作
- 药品 Widget 增加 deeplink 支持,点击跳转到应用
- 新增药品管理路由常量配置
|
2025-11-14 10:52:26 +08:00 |
|
richarjiang
|
6c2f9295be
|
feat(ui): 添加挑战详情分享卡片功能和玻璃态按钮
- 实现挑战分享卡片截图生成,根据参与状态展示不同内容
- 已参与用户显示个人进度条和完成情况
- 未参与用户显示挑战详细信息和参与邀请
- 使用 GlassView 组件优化分享按钮和编辑按钮的视觉效果
- 添加 react-native-view-shot 支持视图截图
- 移除硬编码背景色,统一使用玻璃态交互效果
|
2025-11-14 10:02:44 +08:00 |
|
richarjiang
|
6ad77bc0e2
|
feat(medical): 添加医疗免责声明和参考文献功能
- 在用药模块首次添加时显示医疗免责声明弹窗
- 新增断食参考文献页面,展示权威医学机构来源
- 在个人中心添加WHO医学来源入口
- 使用本地存储记录用户已读免责声明状态
- 支持Liquid Glass毛玻璃效果和降级方案
- 新增中英文国际化翻译支持
|
2025-11-14 09:14:12 +08:00 |
|
richarjiang
|
b0e93eedae
|
feat(ios): 添加用药计划Widget小组件支持
- 创建medicineExtension小组件,支持iOS桌面显示用药计划
- 实现App Group数据共享机制,支持主应用与小组件数据同步
- 添加AppGroupUserDefaultsManager原生模块,提供跨应用数据访问能力
- 添加WidgetManager和WidgetCenterHelper,实现小组件刷新控制
- 在medications页面和Redux store中集成小组件数据同步逻辑
- 支持实时同步今日用药状态(待服用/已服用/已错过)到小组件
- 配置App Group entitlements (group.com.anonymous.digitalpilates)
- 更新Xcode项目配置,添加WidgetKit和SwiftUI框架支持
|
2025-11-14 08:51:02 +08:00 |
|
richarjiang
|
d282abd146
|
feat(background): 增强iOS后台任务系统,添加processing任务类型支持
- 添加新的processing任务标识符到iOS配置文件
- 重构BackgroundTaskBridge支持不同任务类型(refresh/processing)
- 增强后台任务日志记录和调试信息
- 修复任务类型配置不匹配问题
- 改进任务调度逻辑和错误处理机制
- 添加任务执行时间戳记录用于调试
- 移除notification-settings中未使用的AuthGuard依赖
|
2025-11-13 17:12:57 +08:00 |
|
richarjiang
|
2dca3253e6
|
feat(i18n): 实现应用国际化支持,添加中英文翻译
- 为所有UI组件添加国际化支持,替换硬编码文本
- 新增useI18n钩子函数统一管理翻译
- 完善中英文翻译资源,覆盖统计、用药、通知设置等模块
- 优化Tab布局使用翻译键值替代静态文本
- 更新药品管理、个人资料编辑等页面的多语言支持
|
2025-11-13 11:09:55 +08:00 |
|
richarjiang
|
416d144387
|
feat(i18n): 添加国际化支持和中英文切换功能
- 实现完整的中英文国际化系统,支持动态语言切换
- 新增健康数据权限说明页面,提供HealthKit数据使用说明
- 为服药记录添加庆祝动画效果,提升用户体验
- 优化药品添加页面的阴影效果和视觉层次
- 更新个人页面以支持多语言显示和语言选择模态框
|
2025-11-13 09:05:23 +08:00 |
|
richarjiang
|
7c8538f5c6
|
feat(medications): 添加AI用药分析功能
- 集成流式AI分析接口,支持实时展示分析结果
- 添加VIP权限校验和会员弹窗引导
- 使用Markdown渲染AI分析内容
- 优化底部按钮布局,AI分析按钮占2/3宽度
- 支持请求取消和错误处理
- 自动滚动到分析结果区域
- InfoCard组件优化,图标、标签和箭头排列在同一行
|
2025-11-12 17:07:42 +08:00 |
|
richarjiang
|
0bea454dca
|
feat(fasting): 添加周期性断食计划功能
实现完整的周期性断食计划系统,支持每日自动续订和通知管理:
- 新增周期性断食状态管理(activeCycle、currentCycleSession、cycleHistory)
- 实现周期性断食会话的自动完成和续订逻辑
- 添加独立的周期性断食通知系统,避免与单次断食通知冲突
- 支持暂停/恢复周期性断食计划
- 添加周期性断食数据持久化和水合功能
- 优化断食界面,优先显示周期性断食信息
- 新增空状态引导界面,提升用户体验
- 保持单次断食功能向后兼容
|
2025-11-12 15:36:35 +08:00 |
|
richarjiang
|
8687be10e8
|
refactor(ui): 优化药品添加页面的图片选择和显示效果
|
2025-11-12 10:54:51 +08:00 |
|
richarjiang
|
be55c6f43e
|
feat(medications): 添加药品停用确认弹窗
在药品详情页和管理页面添加停用药品的确认弹窗,防止用户误操作。
当用户尝试停用药品时,会显示确认对话框提醒用户停用后当天已生成的用药计划会被删除且无法恢复。
|
2025-11-12 10:49:39 +08:00 |
|
richarjiang
|
35f06951a0
|
feat(medications): 添加药品结束日期选择功能
- 新增药品结束日期选择器,支持设置服药周期
- 优化日期显示格式,从"开始日期"改为"服药周期"
- 添加日期验证逻辑,确保开始日期不早于今天且结束日期不早于开始日期
- 改进添加药品页面的日期选择UI,采用并排布局
- 调整InfoCard组件样式,移除图标背景色并减小字体大小
|
2025-11-12 10:27:20 +08:00 |
|
richarjiang
|
e412f80295
|
perf: 更换 logo
|
2025-11-12 09:43:22 +08:00 |
|
richarjiang
|
4f946a0566
|
refactor(ui): 简化卡片组件视觉样式并扩展引导流程
统一移除 InfoCard 和药品详情页面的阴影与边框装饰,实现更简洁的界面风格
新增用药管理引导页面,完善用户首次使用体验
添加药品管理相关插图资源,增强视觉引导效果
|
2025-11-11 19:01:30 +08:00 |
|
richarjiang
|
2ed3562a00
|
feat(ui): 优化药品管理页面的视觉设计和背景效果
- 调整药品列表页面的渐变背景颜色,移除最后一个颜色值
- 修复药品详情页面的样式数组格式问题
- 为添加药品页面添加渐变背景和装饰性圆圈元素
- 优化表单按钮的间距和样式,提升视觉层次感
- 统一背景颜色处理,增强页面一致性
|
2025-11-11 17:57:36 +08:00 |
|
richarjiang
|
81a6e43d7c
|
feat(ui): 为药品管理页面添加渐变背景和装饰性元素
- 在药品详情页和管理页面添加线性渐变背景
- 增加装饰性圆圈元素提升视觉效果
- 为添加按钮应用玻璃效果(当可用时)
- 简化InfoCard组件,移除玻璃效果逻辑
- 统一页面视觉风格,提升用户体验
|
2025-11-11 17:39:52 +08:00 |
|
richarjiang
|
f4ce3d9edf
|
feat(medications): 重构药品通知系统并添加独立设置页面
- 创建药品通知服务模块,统一管理药品提醒通知的调度和取消
- 新增独立的通知设置页面,支持总开关和药品提醒开关分离控制
- 重构药品详情页面,移除频率编辑功能到独立页面
- 优化药品添加流程,支持拍照和相册选择图片
- 改进通知权限检查和错误处理机制
- 更新用户偏好设置,添加药品提醒开关配置
|
2025-11-11 16:43:27 +08:00 |
|
richarjiang
|
d9975813cb
|
feat(medications): 添加药品图片预览功能并优化InfoCard组件
- 在药品详情页面集成 react-native-image-viewing 实现图片全屏预览
- 添加图片预览提示图标,提升用户交互体验
- 优化 InfoCard 组件渲染逻辑,简化代码结构
- 调整药品图片样式,增加圆角效果并优化尺寸比例
- 为可点击的 InfoCard 图标和箭头添加玻璃态效果支持
|
2025-11-11 14:40:26 +08:00 |
|
richarjiang
|
7ea558847d
|
feat(medications): 增强药品详情页面的编辑功能
- 添加剂量、剂型和服药频率的交互式选择器
- 实现提醒时间的动态编辑和添加功能
- 引入玻璃效果优化删除按钮的视觉体验
- 重构常量配置,提取药物相关常量到独立文件
- 创建可复用的InfoCard组件支持玻璃效果
|
2025-11-11 11:31:06 +08:00 |
|
richarjiang
|
50525f82a1
|
feat(medications): 优化药品管理功能和登录流程
- 更新默认药品图片为专用图标
- 移除未使用的 loading 状态选择器
- 优化 Apple 登录按钮样式,支持毛玻璃效果和加载状态
- 添加登录成功后返回功能(shouldBack 参数)
- 药品详情页添加信息卡片点击交互
- 添加药品添加页面的登录状态检查
- 增强时间选择器错误处理和数据验证
- 修复药品图片显示逻辑,支持网络图片
- 优化药品卡片样式和布局
- 添加图片加载错误处理
|
2025-11-11 10:02:37 +08:00 |
|
richarjiang
|
0594831c9f
|
feat(medications): 添加药品详情页面和删除功能
新增药品详情页面,支持查看药品信息、编辑备注、切换提醒状态和删除药品
- 创建动态路由页面 /medications/[medicationId].tsx 展示药品详细信息
- 添加语音输入备注功能,支持 iOS 语音识别
- 实现药品删除确认对话框和删除操作
- 优化药品卡片点击跳转详情页面的交互
- 添加删除操作的加载状态和错误处理
- 改进药品管理页面的开关状态显示和加载指示器
|
2025-11-10 14:46:13 +08:00 |
|
richarjiang
|
25b8e45af8
|
feat(medications): 实现完整的用药管理功能
添加了药物管理的核心功能,包括:
- 药物列表展示和状态管理
- 添加新药物的完整流程
- 服药记录的创建和状态更新
- 药物管理界面,支持激活/停用操作
- Redux状态管理和API服务层
- 相关类型定义和辅助函数
主要文件:
- app/(tabs)/medications.tsx - 主界面,集成Redux数据
- app/medications/add-medication.tsx - 添加药物流程
- app/medications/manage-medications.tsx - 药物管理界面
- store/medicationsSlice.ts - Redux状态管理
- services/medications.ts - API服务层
- types/medication.ts - 类型定义
|
2025-11-10 10:02:53 +08:00 |
|
richarjiang
|
3aafc50702
|
feat(medications): 添加用药管理功能
- 新增用药标签页,包含完整的用药记录界面
- 实现用药卡片组件,支持状态显示(已服用/未服用/已错过)
- 增强日期选择器,添加"回到今天"快捷功能
- 添加用药相关的图标支持(pills.fill, plus)
- 集成用药路由配置,支持标签页导航
该功能为用户提供完整的用药管理体验,包括用药记录、状态跟踪和日期筛选等核心功能。
|
2025-11-06 17:51:06 +08:00 |
|
richarjiang
|
a228280ca4
|
feat(onboarding): 添加新用户引导流程
实现了完整的应用引导功能,包括:
- 新增引导页面UI,包含健康数据追踪、轻断食计划和健康挑战三个介绍页面
- 添加引导状态持久化存储,使用AsyncStorage管理用户完成状态
- 修改应用启动逻辑,根据引导状态决定跳转到主页或引导页
- 在开发者选项中添加重置引导状态功能,方便测试
- 更新路由配置和存储键常量,统一管理引导相关配置
|
2025-11-06 15:22:31 +08:00 |
|
richarjiang
|
9b1a40cea3
|
feat(background-task): 实现原生与JS层的任务同步机制
解决后台任务在JS监听器未就绪时丢失的问题。新增任务缓存队列,当检测到无JS监听器时将任务暂存,并启动20秒超时计时器等待JS初始化完成。JS层通过markJSReady接口通知原生层准备就绪,触发缓存任务的立即执行。超时后自动切换到默认处理逻辑,确保任务不丢失。
|
2025-11-06 09:20:52 +08:00 |
|
richarjiang
|
ea22901553
|
feat(background-task): 完善iOS后台任务系统并优化断食通知和UI体验
- 修复iOS后台任务注册时机问题,确保任务能正常触发
- 添加后台任务调试辅助工具和完整测试指南
- 优化断食通知系统,增加防抖机制避免频繁重调度
- 改进断食自动续订逻辑,使用固定时间而非相对时间计算
- 优化统计页面布局,添加身体指标section标题
- 增强饮水详情页面视觉效果,改进卡片样式和配色
- 添加用户反馈入口到个人设置页面
- 完善锻炼摘要卡片条件渲染逻辑
- 增强日志记录和错误处理机制
这些改进显著提升了应用的稳定性、性能和用户体验,特别是在iOS后台任务执行和断食功能方面。
|
2025-11-05 11:23:33 +08:00 |
|
richarjiang
|
d74046498d
|
# 分析方案
## 变更内容总结
1. **iOS后台任务系统重构** - 修复后台任务无法自动运行的问题
2. **日志系统优化** - 改进日志记录机制,添加队列和批量写入
3. **文档新增** - 添加后台任务修复总结和测试指南文档
4. **应用启动优化** - 添加后台任务状态检查和恢复逻辑
5. **版本号更新** - Info.plist版本从1.0.23升级到1.0.24
## 提交信息类型判断
- **主要类型**: `fix` - 这是一个重要的bug修复,解决了iOS后台任务无法自动运行的核心问题
- **作用域**: `ios-background` - 专注于iOS后台任务功能
- **影响**: 这个修复对iOS用户的后台功能至关重要
## 提交信息
fix(ios-background): 修复iOS后台任务无法自动运行的问题
主要修复内容:
- 修复BackgroundTaskBridge任务调度逻辑,改用BGAppRefreshTaskRequest
- 添加任务完成后自动重新调度机制,确保任务持续执行
- 优化应用生命周期管理,移除重复的后台任务调度
- 在应用启动时添加后台任务状态检查和恢复功能
- 将默认任务间隔从30分钟优化为15分钟
次要改进:
- 重构日志系统,添加内存队列和批量写入机制,提升性能
- 添加写入锁和重试机制,防止日志数据丢失
- 新增详细的修复总结文档和测试指南
技术细节:
- 使用BGAppRefreshTaskRequest替代BGProcessingTaskRequest
- 实现任务过期自动重新调度
- 添加任务执行状态监控和恢复逻辑
- 优化错误处理和日志输出
影响范围: iOS后台任务调度、通知推送、应用状态管理
|
2025-11-04 19:14:53 +08:00 |
|
richarjiang
|
f80a1bae78
|
feat(background-task): 实现iOS原生后台任务V2系统并重构锻炼通知消息模板
- 新增iOS原生BackgroundTaskBridge桥接模块,支持后台任务注册、调度和完成
- 重构BackgroundTaskManager为V2版本,集成原生iOS后台任务能力
- 在AppDelegate中注册后台任务处理器,确保应用启动时正确初始化
- 重构锻炼通知消息生成逻辑,使用配置化模板提升可维护性
- 扩展健康数据类型映射,支持更多运动项目的中文显示
- 替换原有backgroundTaskManager引用为backgroundTaskManagerV2
|
2025-11-04 09:41:10 +08:00 |
|
richarjiang
|
fbffa07f74
|
feat(push-notification): 添加用户登录后自动更新推送token绑定功能
- 新增updateTokenUserId方法用于更新设备令牌的用户ID绑定关系
- 添加onUserLogin方法在用户登录成功后自动更新token绑定
- 优化checkAndRegisterToken逻辑,确保每次应用启动都更新用户ID绑定
- 修改UpdateTokenRequest接口,将appVersion和osVersion设为可选参数
- 在用户登录成功后自动触发推送token用户ID绑定更新
|
2025-11-03 17:58:17 +08:00 |
|
richarjiang
|
635d835a50
|
feat(fasting): 完善断食通知系统并优化错误提示
在应用启动时添加断食通知初始化逻辑,改进错误消息提示,并新增后台任务支持断食通知同步。同时优化挑战加入后的数据刷新流程和会员卡片显示样式。
主要更改:
- 添加断食通知启动检测和初始化
- 改进断食通知错误消息,提供更详细的用户指导
- 新增断食通知后台任务处理
- 优化挑战加入后自动刷新详情和排名数据
- 调整会员价格字体大小以提升视觉效果
|
2025-11-03 14:13:49 +08:00 |
|
richarjiang
|
ce382794ba
|
style(membership): 调整会员卡片价格字体大小
|
2025-11-03 11:17:06 +08:00 |
|
richarjiang
|
0265ecfac2
|
feat: 添加后台任务调试工具并优化水提醒任务逻辑
|
2025-11-03 10:55:30 +08:00 |
|
richarjiang
|
16c2351160
|
feat: 移除目标管理功能模块
删除了完整的目标管理功能,包括目标创建、编辑、任务管理等相关页面和组件。同时移除了相关的API服务、Redux状态管理、类型定义和通知功能。应用版本从1.0.20升级到1.0.21。
|
2025-10-31 08:49:22 +08:00 |
|
richarjiang
|
7cd290d341
|
feat(membership): 重构会员系统架构并优化VIP卡片显示
- 创建独立的会员服务模块 services/membership.ts,统一管理会员计划元数据和工具函数
- 新增 membershipSlice Redux状态管理,集中处理会员数据和状态
- 重构个人中心VIP会员卡片,支持动态显示会员计划和有效期
- 优化会员购买弹窗,使用统一的会员计划配置
- 改进会员数据获取流程,确保状态同步和一致性
|
2025-10-29 16:08:58 +08:00 |
|
richarjiang
|
fcf1be211f
|
feat(vip): 实现VIP服务权限控制和食物识别功能限制
- 添加VIP服务权限检查hook,支持免费使用次数限制
- 为食物识别功能添加登录验证和VIP权限检查
- 优化RevenueCat用户标识同步逻辑
- 修复会员购买状态检查的类型安全问题
- 为营养成分分析添加登录验证
|
2025-10-29 09:44:30 +08:00 |
|
richarjiang
|
eaa7f7275c
|
feat(ui): 调整个人中心和会员购买界面布局
- 将推送通知设置移至开发者选项section
- 移除会员购买按钮的协议接受状态限制
- 优化购买按钮的禁用条件逻辑
|
2025-10-28 11:16:32 +08:00 |
|
richarjiang
|
71a8bb9740
|
feat(toast): 实现原生Toast系统并优化会员购买错误处理
- 新增iOS原生Toast模块(NativeToastManager),提供毛玻璃风格的Toast展示
- 重构ToastContext为原生模块调用,添加错误边界和回退机制
- 优化会员购买流程的错误处理,使用RevenueCat标准错误码
- 调整购买按钮高度和恢复购买按钮字体大小,改善UI体验
- 移除不必要的延迟和注释代码,提升代码质量
|
2025-10-28 11:04:34 +08:00 |
|
richarjiang
|
db8b50f6d7
|
feat(membership): 重构会员权益对比表并优化购买界面布局
- 重构权益对比数据结构,支持独占、有限、无限三种权限类型
- 新增权限图标显示逻辑,区分VIP和普通用户权限状态
- 优化会员卡片布局,采用三段式布局提升视觉效果
- 实现悬浮购买按钮,支持Liquid Glass毛玻璃效果
- 增强购买流程验证,添加自动选择产品和详细错误处理
- 调整界面间距和样式,提升整体用户体验
|
2025-10-27 14:43:19 +08:00 |
|
richarjiang
|
82edb2593c
|
feat(membership): 重构会员购买界面并添加图标库使用规范
- 将 MaterialIcons 替换为 Ionicons 以保持图标库一致性
- 重新设计会员购买界面,采用分段卡片布局和权益对比表格
- 添加 Liquid Glass 兼容的悬浮返回按钮
- 优化套餐卡片样式,使用渐变背景和标签展示
- 添加会员权益对比功能,清晰展示 VIP 与普通用户差异
- 更新任务文档,记录图标库使用规范和按钮组件 Liquid Glass 兼容性实现模式
|
2025-10-27 08:19:15 +08:00 |
|
richarjiang
|
2e11f694f8
|
feat(membership): 实现会员系统和购买流程
- 创建 MembershipModalContext 统一管理会员弹窗
- 优化 MembershipModal 产品套餐展示和购买流程
- 集成 RevenueCat SDK 并初始化内购功能
- 在个人中心添加会员 Banner,引导非会员用户订阅
- 修复日志工具的循环引用问题,确保错误信息正确记录
- 版本更新至 1.0.20
新增了完整的会员购买流程,包括套餐选择、购买确认、购买恢复等功能。会员 Banner 仅对非会员用户展示,已是会员的用户不会看到。同时优化了错误日志记录,避免循环引用导致的序列化失败。
|
2025-10-24 09:16:04 +08:00 |
|
richarjiang
|
b75a8991ac
|
feat(auth): 添加登录验证到食物记录相关功能
- 在食物拍照、语音记录和营养成分分析功能中添加登录验证
- 使用 ensureLoggedIn 方法确保用户已登录后再调用服务端接口
- 使用 pushIfAuthedElseLogin 方法处理需要登录的页面导航
- 添加新的营养图标资源
- 在路由常量中添加 FOOD_CAMERA 路由定义
- 更新 Memory Bank 任务文档,记录登录验证和路由常量管理的实现模式
|
2025-10-16 17:45:52 +08:00 |
|
richarjiang
|
339c748a0f
|
feat(profile): 在个人资料页面显示免费AI使用次数
|
2025-10-16 17:17:36 +08:00 |
|
richarjiang
|
c6084fe702
|
feat(nutrition): 添加营养分析历史记录删除和图片预览功能
- 新增删除营养分析记录功能,支持本地状态更新和API调用
- 添加图片全屏预览功能,支持缩放和手势操作
- 实现Liquid Glass风格的删除按钮,包含兼容性处理
- 优化历史记录页面布局和交互体验
- 更新Memory Bank文档,添加Liquid Glass按钮实现指南
|
2025-10-16 16:43:45 +08:00 |
|