Files
wushu/CHANGELOG.md
Developer cba04235c8 release
2026-04-03 03:26:06 +08:00

471 lines
20 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
All notable changes to this project will be documented in this file.
---
## [1.4.1] - 2026-04-03
### 新增
-**从 pubspec.yaml 动态获取版本号**
- 使用 package_info_plus 插件动态获取应用版本号和版本代码
- 在 AppConfig 中添加 init() 初始化方法和 appVersion、appVersionCode getter
- 在 main.dart 中应用启动时初始化 AppConfig
- 在 app-info.dart 中动态显示 appVersion 和 appVersionCode
- 涉及文件:
- `pubspec.yaml` - 使用官方 package_info_plus: ^9.0.1
- `lib/config/app_config.dart` - 添加动态版本号获取
- `lib/main.dart` - 初始化 AppConfig
- `lib/views/profile/app-info.dart` - 动态显示版本号
-**软件更新日志卡片**
- 启用应用信息页面的软件更新日志卡片
- 添加了版本 1.4.1 和 1.3.59 的更新内容
- 涉及文件:
- `lib/views/profile/app-info.dart` - 启用更新日志
-**开源框架列表添加 GetX**
- 在应用信息页面的开源框架列表中添加了 GetX
- GetX 协议MIT
- 涉及文件:
- `lib/views/profile/app-info.dart` - 添加 GetX 到开源框架列表
-**了解我们页面网站列表优化**
- 在官方网站卡片中添加了情景诗词在线版
- 两个网站都添加了独立的复制按钮
- 添加了网站标签显示官方APP页/情景诗词在线版)
- 涉及文件:
- `lib/views/profile/settings/learn-us.dart` - 新增网站列表和复制按钮
### 优化
-**解决 package_info_plus 依赖冲突**
- 解决 wakelock_plus 与 package_info_plus 的版本冲突
- 使用官方版本 package_info_plus: ^9.0.1 替代 git 版本
- 同时保留鸿蒙适配版代码在 packages/flutter_plus_plugins/packages/package_info_plus 以备需要
- 鸿蒙适配版包含完整的 ohos 平台实现
- 涉及文件:
- `pubspec.yaml` - 移除 dependency_overrides使用官方版本
- `packages/flutter_plus_plugins/packages/package_info_plus` - 鸿蒙适配版本地备份
-**使用 Get.snackbar 替代 ScaffoldMessenger**
- 将应用信息页面中的所有 SnackBar 消息改为 Get.snackbar
- 背景色使用 Get.snackbar 默认颜色
- 文字颜色使用动态主题色
- 图标颜色也使用动态主题色(仅复制提示)
- 添加圆角和边距样式
- 涉及文件:
- `lib/views/profile/app-info.dart` - SnackBar 改为 Get.snackbar
-**了解我们页面消息提示优化**
- 将了解我们页面中的所有 SnackBar 消息改为 Get.snackbar
- 包括QQ群号复制、微信公众号复制、网站链接复制
- 背景色使用 Get.snackbar 默认颜色
- 文字颜色使用动态主题色
- 涉及文件:
- `lib/views/profile/settings/learn-us.dart` - 所有消息改为 Get.snackbar
### 修复
- 🐛 **修复版本号不显示的问题**
- 将 AppConfig 中的版本号改为 GetX 响应式变量
- 在 app-info.dart 中使用 Obx 观察版本号变化
- 更新默认版本号为 1.4.1
- 涉及文件:
- `lib/config/app_config.dart` - 响应式版本号
- `lib/views/profile/app-info.dart` - Obx 包裹版本号显示
### 删除
- 🗑️ **移除设计风格卡片**
- 从应用信息页面移除了设计风格卡片
- 涉及文件:
- `lib/views/profile/app-info.dart` - 移除 _buildDesignStyleCard 调用
## [1.3.59] - 2026-04-03
### 修复
- 🐛 **修复出处字段被时间提示语遮挡的问题**
- 给诗词卡片内容添加了顶部内边距60
- 确保出处等内容不被浮动的时间提示语遮挡
- 涉及文件:
- `lib/views/home/home_part.dart` - 添加顶部内边距
## [1.3.58] - 2026-04-03
### 优化
-**优化主页诗词卡片布局,去除时间提示语下方的空白**
- 将时间提示语("夜深了,注意身体")改为 Positioned 在上层单独占位
- 时间提示语不再占用布局空间,下方内容自动顶上来
- 调整了复制提示框的位置,避免与时间提示语重叠
- 涉及文件:
- `lib/views/home/home_part.dart` - 优化时间提示语布局
## [1.3.57] - 2026-04-03
### 修复
- 🐛 **修复诗词答题页面底部操作按钮容器的深色模式适配**
- 修复了底部"上一题 提示 下一题"容器在深色模式下背景色不匹配的问题
- 适配了按钮渐变、文字颜色、阴影等元素在深色模式下的显示
- 将静态颜色 `AppConstants.primaryColor` 改为动态的 `primaryColor`,跟随主题色变化
- 涉及文件:
- `lib/views/profile/level/poetry.dart` - 修复深色模式适配
## [1.3.56] - 2026-04-03
### 优化
- 🎨 **修改主题颜色默认值为中国传统风格**
- 默认主题颜色从紫色改为书褐色 (0xFF8B4513),更符合中国传统诗词风格
- 默认强调色从紫色改为明黄色 (Colors.yellow)
- 涉及文件:
- `lib/models/colors/theme_colors.dart` - 调整主题颜色和强调色顺序
- 📋 **搜索项目中使用静态主题色的地方**
- 发现项目中多个文件使用 AppConstants.primaryColor 等静态颜色
- 建议后续逐步改用 ThemeController 动态获取主题色
## [1.3.55] - 2026-04-03
### 修复
- 🐛 **修复发现页面动画导致的卡死问题**
- 修复了使用 SingleTickerProviderStateMixin 但创建多个 AnimationController 导致的异常
- 将 SingleTickerProviderStateMixin 改为 TickerProviderStateMixin
- 涉及文件:
- `lib/views/discover_page.dart` - 修复 ticker 提供者
## [1.3.54] - 2026-04-03
### 优化
-**优化发现页面提示框的关闭动画**
- 点击关闭按钮时,提示框会有平滑的淡出和收缩动画
- 下方的内容会自动顶上来占位,实现流畅的过渡效果
- 涉及文件:
- `lib/views/discover_page.dart` - 添加动画控制器和过渡效果
## [1.3.53] - 2026-04-03
### 修复
- 🐛 **修复声音设置不一致的问题**
- 修复了声音关闭时依旧有声音、有时候关闭时没声音的问题
- 统一了 AudioManager 和 app_fun.dart 的默认值(都默认为 false即静音
- 修复了 AudioManager.setMuted() 没有保存到 SharedPreferences 的问题
- 在 app_fun.dart 中加载设置时同步到 AudioManager
- 涉及文件:
- `lib/utils/audio_manager.dart` - 修复默认值和 setMuted 方法
- `lib/views/profile/settings/app_fun.dart` - 修复设置加载和同步逻辑
## [1.3.52] - 2026-04-03
### 修复
- 🐛 **彻底修复主页加载下一条诗词卡片时的闪白问题**
- 找到并修复了闪白的根本原因home_page.dart 中每次 build 都会触发的 FadeTransition 动画
- 移除了导致页面每次重新渲染都闪烁的动画代码
- 简化了数据加载逻辑,移除了复杂的分步加载,改为一次性加载
- 清理了不再需要的 AnimationController 和 SingleTickerProviderStateMixin
- 涉及文件:
- `lib/views/home/home_page.dart` - 移除 FadeTransition 动画和 AnimationController
- `lib/services/get/home_controller.dart` - 简化 `simulateSectionLoading()` 方法
## [1.3.51] - 2026-04-03
### 修复
- 🐛 **主页加载下一条诗词卡片时的闪白问题**
- 修复切换诗词卡片时页面闪白的问题
- 优化数据加载顺序,确保在显示骨架屏时旧数据仍然可见
- 优化分步加载动画将延迟从200ms缩短为150ms
- 在设置加载状态后立即调用update()通知UI更新
- 涉及文件:
- `lib/services/get/home_controller.dart` - 优化 `loadNextPoetry()``simulateSectionLoading()` 方法
## [1.3.50] - 2026-04-03
### 新增
-**分类页面底部提示**
- 在分类列表底部添加"到底了"提示
- 防止列表项被全局底部导航栏遮住
- 支持深色模式适配
- 涉及文件:
- `lib/views/active/category_page.dart` - 添加 `_buildEndIndicator` 方法
### 优化
-**版本号管理优化**
- 删除 `AppConstants` 中重复的 `appVersion` 定义
- 统一使用 `AppConfig.appVersion` 管理版本号
- 更新版本号至 1.3.50
- 涉及文件:
- `lib/constants/app_constants.dart` - 删除 `appVersion` 定义
- `lib/config/app_config.dart` - 更新版本号
- `lib/views/profile/profile_page.dart` - 更新引用
-**Get.snackbar 消息样式优化**
- 字体颜色使用动态主题色,背景使用默认样式
- 调用时重新获取 `ThemeController` 确保获取最新主题色
- 涉及文件:
- `lib/views/profile/settings/learn-us.dart` - 复制成功提示
- `lib/views/profile/per_card.dart` - 头像切换提示
- `lib/views/profile/history_page.dart` - 分享和查看详情提示
- `lib/views/profile/settings/offline-data.dart` - 离线数据页面所有消息提示
- `lib/services/get/profile_controller.dart` - 开发计划、屏幕常亮等提示
- `lib/services/get/favorites_controller.dart` - 收藏页面排序提示
- `lib/services/get/discover_controller.dart` - 发现页面刷新提示
- `lib/services/get/theme_controller.dart` - 主题切换提示
## [1.3.49] - 2026-04-03
### 修复
- 🐛 **悬浮按钮管理器状态更新时机修复**
- 修复 `setState() or markNeedsBuild() called when widget tree was locked` 错误
- 使用 `WidgetsBinding.instance.addPostFrameCallback` 延迟状态更新
- 涉及文件:
- `lib/views/home/set/home-set.dart` - `init()``_restoreFromFlashing()``dispose()` 方法添加延迟更新
## [1.3.48] - 2026-04-03
### 修复
- 🐛 **关怀页面用户类型主题色跟随修复**
- 修复用户类型选择按钮的主题色不跟随问题
- 使用 `Obx` 包裹按钮,实时响应主题色变化
- 涉及文件:
- `lib/views/home/care/care-page.dart` - `_buildUserTypeSelector` 方法添加响应式主题色
## [1.3.47] - 2026-04-03
### 优化
-**关怀模式开关点击区域优化**
- 点击关怀开关卡片的空白区域也可跳转至关怀页面
- Switch 开关保持独立的开关功能
- 涉及文件:
- `lib/views/home/care/care_widgets.dart` - `CareModeToggle` 组件添加整体点击跳转
## [1.3.46] - 2026-04-03
### 新增
-**设置建议卡片新增统计跳转选项**
- 新增统计选项,跳转至 `EntirePage`(全站数据统计)
- 选项总数从8个增加到9个布局调整为3页
- 每页显示4个选项第三页显示最后1个选项
- 页面指示器更新为3个圆点
- 涉及文件:
- `lib/controllers/settings/suggestions.dart` - 添加统计选项并调整布局
## [1.3.45] - 2026-04-03
### 新增
-**设置建议卡片新增跳转选项**
- 新增诗词搜索选项,跳转至 `ActiveSearchPage`
- 新增调试页面选项,跳转至 `RatePage`
- 选项总数从6个增加到8个每页显示4个选项
- 涉及文件:
- `lib/controllers/settings/suggestions.dart` - 添加新选项并调整布局
## [1.3.44] - 2026-04-03
### 新增
-**权限管理页面添加设置建议卡片**
- 在权限管理页面底部显示 `SuggestionsCard` 组件
- 用户可在权限页面快速访问主题风格、关怀模式、使用教程等功能
- 涉及文件:
- `lib/views/profile/guide/permission.dart` - 导入并添加 `SuggestionsCard`
## [1.3.43] - 2026-04-03
### 新增
-**设置建议卡片功能扩展**
- 新增关怀模式选项,跳转至 `CarePage`
- 新增使用教程选项,跳转至 `BeginnerPage`
- 选项支持左右滑动切换页面PageView
- 选项支持随机排序,每次展示卡片时自动重新排序
- 添加页面指示器,显示当前所在页面
- 涉及文件:
- `lib/controllers/settings/suggestions.dart` - 重构为 PageView 布局,添加随机排序功能
## [1.3.42] - 2026-04-03
### 新增
-**设置建议卡片页面返回悬浮按钮**
- 从卡片进入的页面自动添加左侧返回悬浮长条按钮
- 按钮位置在屏幕左侧中间45%高度处)
- 5秒后自动消失带有淡出动画
- 支持深色/浅色模式,颜色跟随主题色
- 涉及文件:
- `lib/controllers/settings/suggestions.dart` - 添加 `_PageWithBackButton` 包装组件
## [1.3.41] - 2026-04-03
### 优化
-**设置建议卡片布局与主题色支持**
- 修改卡片内选项布局icon 和标题改为同一行,左右对齐
- 卡片整体支持主题色icon 颜色跟随主题色变化
- 使用 `AppColors.primary` 动态获取当前主题色
- 按钮背景使用主题色边框和半透明背景
- 涉及文件:
- `lib/controllers/settings/suggestions.dart` - 布局重构,添加主题色支持
- `lib/models/colors/app_colors.dart` - 使用动态颜色
## [1.3.40] - 2026-04-03
### 优化
-**个性化设置页面对话框优化**
- 开发中提示对话框添加"不再提醒"复选框,勾选后下次进入页面不再自动显示
- 设置保存到 SharedPreferences持久化存储用户选择
- AppBar 右侧添加信息图标,点击可手动显示开发中提示对话框
- 涉及文件:
- `lib/views/profile/theme/app-diy.dart` - 对话框优化,添加复选框和图标按钮
## [1.3.39] - 2026-04-03
### 新增
-**主页诗词卡片骨架屏加载动画**
- 创建 `skeleton_widgets.dart`实现骨架屏基础组件SkeletonContainer
- 修改 `home_part.dart`,所有区块(标题、诗词名、内容、关键词、简介)支持骨架屏加载状态
- 修改 `care_poetry_page.dart`,关怀模式诗词页面支持骨架屏加载
- 骨架屏采用渐变动画效果,防止加载时闪白
- 支持深色/浅色模式,骨架颜色自动适配
- 涉及文件:
- `lib/views/home/components/skeleton_widgets.dart` - 新建骨架屏组件
- `lib/views/home/home_part.dart` - 集成骨架屏到各区块
- `lib/views/home/care/care_poetry_page.dart` - 关怀模式骨架屏支持
### 优化
-**关怀开关自动隐藏功能**
- 主页左上角关怀按钮点击后开关面板3秒内无操作自动消失
- 用户与开关交互时重置定时器,延长显示时间
- 涉及文件:
- `lib/services/get/care_controller.dart` - 添加自动隐藏定时器逻辑
- `lib/views/home/home_page.dart` - 交互时重置定时器
## [1.3.38] - 2026-04-03
### 重构
- 🔄 **诗词答题页面主题色支持与代码重构**
- 创建 `poetry-page.dart`,提取 UI 组件PoetryOptionItem、PoetryOptionsLayout、PoetryTag
- 修改 `poetry.dart`,使用新组件,添加主题色支持
- 修改 `flow-anim.dart`,添加主题色支持
- 修改 `distinguish.dart`,添加主题色支持
- 支持动态主题色切换,所有组件颜色同步更新
- 支持深色模式,背景色、文字颜色自动适配
- 保持页面布局不变,功能完全兼容
- 涉及文件:
- `lib/views/profile/level/poetry-page.dart` - 新建 UI 组件文件
- `lib/views/profile/level/poetry.dart` - 重构主页面
- `lib/views/profile/level/flow-anim.dart` - 添加主题色支持
- `lib/views/profile/level/distinguish.dart` - 添加主题色支持
## [1.3.37] - 2026-04-02
### 新增
-**主题颜色选择器重新设计**
- 新增中国传统色彩:书褐色(#8B4513)和宣纸色(#F5F5F0
- 颜色选择器改为横向滚动列表,每个颜色显示圆形色块和中文名称
- 选中状态显示勾选图标和发光阴影效果
- 颜色名称采用中国风命名:紫韵、天蓝、翠绿、橙光、朱红、青碧、书褐、明黄、桃粉、湖青、罗兰、宣纸
- 涉及文件:
- `lib/models/colors/theme_colors.dart` - 新增中国传统色彩
- `lib/views/profile/theme/app-diy.dart` - 重新设计颜色选择器
## [1.3.36] - 2026-04-02
### 新增
-**Profile 组件主题色支持**
- Bug列表页面、全站统计页面、投票凭证弹窗、Pop菜单、服务器信息弹窗支持主题色设置
- 所有组件颜色动态响应主题色变化,包括按钮、卡片、图标、文本等
- 新增 `AppColors` 类统一管理动态主题色,支持深色/浅色模式自动切换
- 使用 iOS 风格系统颜色(蓝、绿、红、橙、紫等)保持一致性
- 涉及文件:
- `lib/models/colors/app_colors.dart` - 新建动态颜色管理类
- `lib/views/profile/components/bug_list_page.dart` - 支持主题色
- `lib/views/profile/components/entire_page.dart` - 支持主题色
- `lib/views/profile/components/login_register_dialog.dart` - 支持主题色
- `lib/views/profile/components/pop-menu.dart` - 支持主题色
- `lib/views/profile/components/server_info_dialog.dart` - 支持主题色
- `lib/views/profile/level/distinguish.dart` - 支持主题色
- `lib/views/profile/level/flow-anim.dart` - 支持主题色
- `lib/views/profile/level/poetry.dart` - 支持主题色
- `lib/views/profile/app-info.dart` - 支持主题色
## [1.3.35] - 2026-04-02
### 新增
-**活跃页面主题色支持**
- 搜索页面、热门页面、分类页面、活跃度页面支持主题色设置
- 所有组件颜色动态响应主题色变化包括Tab栏、按钮、卡片边框等
- 涉及文件:
- `lib/views/active/active_search_page.dart` - 支持主题色
- `lib/views/active/popular_page.dart` - 支持主题色
- `lib/views/active/category_page.dart` - 支持主题色
- `lib/views/active/rate.dart` - 支持主题色
## [1.3.34] - 2026-04-02
### 新增
-**多页面主题色支持**
- 发现页面、标签页面、收藏页面、响应式首页等多个页面支持主题色设置
- 所有组件颜色动态响应主题色变化
- 涉及文件:
- `lib/views/active/tags/corr_page.dart` - 支持主题色
- `lib/views/discover_page.dart` - 支持主题色
- `lib/views/favorites_page.dart` - 支持主题色
- `lib/views/responsive_home_page.dart` - 支持主题色
## [1.3.33] - 2026-04-02
### 新增
-**首页主题色支持**
- 首页诗词卡片、按钮、加载状态等组件支持主题色设置
- 主题色变化时,首页所有相关组件会实时更新
- 涉及文件:
- `lib/views/home/home_part.dart` - 支持主题色
- `lib/views/home/set/home_components.dart` - 支持主题色
## [1.3.32] - 2026-04-02
### 新增
-**个人卡片emoji头像点击切换功能**
- 点击头像可自动切换不同的emoji表情
- 内置20个精选emoji头像👤😊🎨🌟🦋🌺🍀🎯🚀💎🌈🎭🦊🐼🦁🐨🦄🐉🔥⚡
- 添加触觉反馈,提升交互体验
- 切换时显示SnackBar提示告知用户新头像
- 支持收起和展开状态下的头像切换
- 涉及文件:
- `lib/views/profile/per_card.dart` - 添加头像切换功能
## [1.3.31] - 2026-04-02
### 优化
- 🎨 **统一气泡提示样式为 Get.snackbar**
-`home_components.dart` 中的所有 `PoetryStateManager.showSnackBar` 改为 `Get.snackbar`
- 使用透明毛玻璃样式,与调试信息气泡保持一致
- 包括分享、复制等操作的提示
- 涉及文件:
- `lib/views/home/home_components.dart` - 统一气泡样式
---
## 软件特性功能
### 已开发完成
- ✅ iOS 风格界面设计
- ✅ 诗词浏览与收藏
- ✅ 搜索与分类
- ✅ 答题挑战功能
- ✅ 离线模式
- ✅ 个性化设置
- ✅ 投稿功能
- ✅ 投票功能
- ✅ 天气与十二时辰
- ✅ 图片分享
- ✅ 数据管理
- ✅ 使用教程页面
- ✅ 全站统计页面
- ✅ 修复 AppBar 标题显示问题
- ✅ 个人卡片emoji头像切换功能
- ✅ 深色模式支持
- ✅ 液态玻璃导航栏
- ✅ 多页面主题色支持
### 开发中
- 🚧 更多功能优化
## 开发进度
| 功能 | 优先级 | 状态 |
| ------------ | ------ | -------- |
| 使用教程 | 1 | ✅ 已完成 |
| 投稿功能优化 | 2 | ✅ 已完成 |
| 界面美化 | 3 | ✅ 已完成 |
| 数据管理功能 | 1 | ✅ 已完成 |
| 主题色支持 | 1 | ✅ 已完成 |
| 性能优化 | 4 | 🔄 进行中 |
| 新功能开发 | 5 | 📋 计划中 |