docs(plans): 留痕 K67 清理无引用代码
This commit is contained in:
1 parent
c5def287b8
commit
fdc7314087
2 files changed
+69
-48
No files matched your search
+40
-48
@@ -1,67 +1,59 @@
|
||||
# INBOX
|
||||
|
||||
## [已处理] K66-A 启动页停留到首页就绪再进首页
|
||||
## [已处理] K67-A 删除无引用代码与无用资源
|
||||
|
||||
### 背景
|
||||
### 扫描结论
|
||||
|
||||
K65-A 已把首页预取提前到启动阶段。产品要求再简化观感:
|
||||
按「文件是否被 import/part/export 引用」做了全量可达性分析(含 `test/`),以下是彻底无引用的文件。
|
||||
|
||||
> 「等首页加载完就进入首页就行了」
|
||||
### 要删除的 Dart 文件(10 个)
|
||||
|
||||
即:别再出现「深底 + 转圈」这种中间页,启动期间保持与原生开屏一致的品牌画面,
|
||||
目录数据就绪后直接进首页。
|
||||
- `lib/core/widgets/library_drama_tile.dart`
|
||||
- `lib/pages/auth/auth_binding.dart`
|
||||
- `lib/pages/discover/category_dramas_page.dart`
|
||||
- `lib/pages/discover/widgets/category_grid.dart`
|
||||
- `lib/pages/discover/widgets/ranking_section.dart`
|
||||
- `lib/pages/home/home_browse_view.dart`
|
||||
- `lib/pages/home/home_browse_logic.dart`
|
||||
- `lib/pages/home/widgets/home_browse_header.dart`
|
||||
- `lib/pages/home/widgets/home_menu_sheet.dart`
|
||||
- `lib/pages/mine/widgets/continue_watching_card.dart`
|
||||
|
||||
### 现状
|
||||
说明:`auth_form_widgets.dart`、`auth_widgets.dart`、`player_view_actions.dart`、
|
||||
`home_feed_overlay_parts.dart`、`player_overlay_parts.dart` 是 `part` 文件,**不要删**。
|
||||
|
||||
`lib/pages/home/home_view.dart` 的 `_buildHome`:
|
||||
### 要删除的安卓资源
|
||||
|
||||
- `catalog.loading` 为 true 时返回 `AnnotatedRegion(light) + Scaffold(splashInk, 居中主题色转圈)`
|
||||
- 数据就绪后才渲染 `_HomeTabs`
|
||||
- `android/app/src/main/res/drawable-{mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi}/splash_icon.png`
|
||||
(K60 遗留,已无任何 xml 引用)
|
||||
- `android/app/src/main/res/values/colors.xml` 里的
|
||||
`<color name="ic_launcher_background">#FFF1E5</color>`(自适应图标已改用
|
||||
`@mipmap/ic_launcher_background`,无引用)
|
||||
|
||||
### 目标
|
||||
### 要删除的本机无用资源(未纳入 git)
|
||||
|
||||
- `catalog.loading` 且**首次启动尚未 settled** 时,显示与原生开屏一致的品牌画面:
|
||||
深底 `AppColors.splashInk` + 居中的开屏图,不再显示转圈。
|
||||
- 目录数据就绪后同帧切到首页。
|
||||
- 非首次(`settled == true`,例如失败重试)仍保留原来的转圈 loading,避免重复播品牌画面。
|
||||
- `assets/media/`(21 个 mp4,约 315MB)
|
||||
- `assets/images/`(4 张旧海报,约 3.7MB)
|
||||
|
||||
### 实现
|
||||
这两个目录已被 `.gitignore` 忽略、pubspec 也未声明,删除只清理本机磁盘,不产生提交内容。
|
||||
|
||||
1. `pubspec.yaml`:`flutter.assets` 增加
|
||||
- `assets/icon/splash_logo.png`
|
||||
- `assets/icon/splash_logo_android12.png`
|
||||
2. `lib/pages/home/home_view.dart`
|
||||
- 新增私有 `_startupSplash()`:
|
||||
- `AnnotatedRegion<SystemUiOverlayStyle>(value: SystemUiOverlayStyle.light)`
|
||||
- `ColoredBox(color: AppColors.splashInk)`
|
||||
- 居中 `Image.asset(..., key: Key('startup-splash'))`
|
||||
- Android 用 `splash_logo_android12.png`、其它平台用 `splash_logo.png`
|
||||
(与各自原生开屏的取图一致,避免切换时跳变)
|
||||
- 尺寸:Android 288 逻辑像素见方,其它平台 384
|
||||
- `_buildHome`:
|
||||
```dart
|
||||
if (catalog.loading) {
|
||||
return catalog.settled ? _retryLoading() : _startupSplash();
|
||||
}
|
||||
```
|
||||
`_retryLoading()` 即现有的深底 + 主题色转圈。
|
||||
3. 测试(`test/home/` 下)
|
||||
- `settled == false` 且 loading:出现 `startup-splash`,不出现 `CircularProgressIndicator`
|
||||
- `settled == true` 且 loading:出现转圈,不出现 `startup-splash`
|
||||
- 数据就绪:出现首页 feed,`startup-splash` 消失
|
||||
4. 真机自查建议:冷启动录屏,确认原生开屏 → 品牌画面(无转圈)→ 首页,无闪白。
|
||||
### 不要动
|
||||
|
||||
### 验收
|
||||
- `assets/fonts/`(Outfit / PlusJakartaSans):虽然当前 pubspec 未声明,
|
||||
但代码里仍在用这两个 family,删除/启用另行决策,本批保持原样。
|
||||
- `assets/icon/fruitshorts.png`:图标设计源图,保留。
|
||||
- `android/app/src/main/res/drawable*/splash.png`、`background.png`、`android12splash.png`、
|
||||
`ic_launcher_foreground.png`、`mipmap-*` 全部保留(仍被引用)。
|
||||
|
||||
- 冷启动不再出现单独的转圈页。
|
||||
- 门禁:`dart analyze lib test` 零告警、`flutter test` 全过、`flutter build apk --debug` 成功。
|
||||
### 任务
|
||||
|
||||
### Git
|
||||
|
||||
- 从 `develop` 拉 `feat/startup-splash-hold`。
|
||||
- 提交:`feat(home): 启动页停留至首页就绪`,作者 `Zhou Weidong <502333560@qq.com>`。
|
||||
- `--no-ff` 合回 `develop` 并 push;`FruitServer/docs/plans/PROGRESS.md` 追加 K66-A 留痕。
|
||||
1. 删除上述文件与资源;删除后全局搜索确认无残留引用。
|
||||
2. 门禁:`dart analyze lib test` 零告警、`flutter test` 全过、`flutter build apk --debug` 成功。
|
||||
3. 从 `develop` 拉 `chore/cleanup-unused`,只提交 Dart 与安卓资源删除,**禁止 `git add -A`**。
|
||||
4. 提交:`chore(cleanup): 删除无引用代码与无用资源`,作者 `Zhou Weidong <502333560@qq.com>`。
|
||||
5. `--no-ff` 合回 `develop` 并 push;`FruitServer/docs/plans/PROGRESS.md` 追加 K67-A 留痕
|
||||
(列出删除清单、释放体积、门禁输出)。
|
||||
|
||||
### 约束
|
||||
|
||||
- 全程中文;禁止 `git add -A`;不改原生开屏资源与其它页面;完成后停住等待验收。
|
||||
- 全程中文;不改任何业务行为;完成后停住等待验收。
|
||||
@@ -22393,3 +22393,32 @@ Running Gradle task 'assembleDebug'...
|
||||
```
|
||||
|
||||
解读:静态检查零告警,478 条测试全部通过,debug APK 构建成功。真机验收由用户执行。
|
||||
|
||||
## 2026-10-20 ReelShort:K67-A 删除无引用代码与无用资源
|
||||
|
||||
- 前置状态:K66-A 已完成并合并,develop 合并提交 `d2174c5`。
|
||||
- 分支:`chore/cleanup-unused`
|
||||
- 功能提交:`3fefd54 chore(cleanup): 删除无引用代码与无用资源`
|
||||
- develop 合并提交:`2c5ff35 merge: 合并 K67-A 删除无引用代码与资源`,已推送。
|
||||
- 删除无引用 Dart 文件:`library_drama_tile.dart`、`auth_binding.dart`、`category_dramas_page.dart`、`category_grid.dart`、`ranking_section.dart`、`home_browse_view.dart`、`home_browse_logic.dart`、`home_browse_header.dart`、`home_menu_sheet.dart`、`continue_watching_card.dart`,共 1544 行。
|
||||
- 删除 Android 五档密度遗留 `splash_icon.png`,并删除 `colors.xml` 中无引用的 `ic_launcher_background` 颜色。
|
||||
- 清理本机未纳入 Git 的 `assets/media/`(315MB)与 `assets/images/`(3.7MB),合计释放约 319MB;清理后 `assets/` 为 556KB。
|
||||
- 全局搜索确认无删除文件类名、import、`splash_icon` 或颜色名残留;`part` 文件、`assets/fonts`、品牌源图、启动图、背景图、`android12splash`、前景图与 mipmap 均保留。
|
||||
|
||||
门禁原始输出:
|
||||
|
||||
```text
|
||||
$ dart analyze lib test
|
||||
Analyzing lib, test...
|
||||
No issues found!
|
||||
|
||||
$ flutter test
|
||||
00:51 +478: All tests passed!
|
||||
|
||||
$ flutter build apk --debug
|
||||
Running Gradle task 'assembleDebug'...
|
||||
3.9s
|
||||
✓ Built build/app/outputs/flutter-apk/app-debug.apk
|
||||
```
|
||||
|
||||
解读:静态检查零告警,478 条测试全部通过,debug APK 构建成功。真机验收由用户执行。
|
||||
Reference in new issue
Block a user