docs: 记录 K95.2 封面过渡
This commit is contained in:
1 parent
419119725e
commit
ff14762426
2 files changed
+93
No files matched your search
@@ -0,0 +1,54 @@
|
||||
# K95.2 首切频道用封面过渡
|
||||
|
||||
## 目标
|
||||
|
||||
- 首页频道切换后立即显示目标短剧封面,视频首帧就绪后再淡入。
|
||||
- 首页模式视频初始化期间不再显示 `player-session-loading` 大转圈。
|
||||
- 非首页播放器及票据加载状态保持现有行为。
|
||||
|
||||
## 分支
|
||||
|
||||
- ReelShort:`fix/k95.2-poster-transition`,从最新 `origin/develop` 创建。
|
||||
- FruitServer 仅写计划与 PROGRESS 留痕,不改后端功能代码。
|
||||
|
||||
## A. PlayerVideoSurface
|
||||
|
||||
- 新增可选参数 `posterUrl = ''`。
|
||||
- 未 reveal 时:
|
||||
- `posterUrl` 非空显示 `RemoteImage(path: posterUrl, fit: BoxFit.cover)`,
|
||||
Key 为 `player-video-poster`。
|
||||
- `posterUrl` 为空继续显示黑色 `ColoredBox`,保留
|
||||
`player-fallback-background` Key。
|
||||
- 视频 reveal 后继续通过现有 200ms `AnimatedOpacity` 淡入覆盖封面。
|
||||
|
||||
## B. PlayerPage
|
||||
|
||||
- `PlayerVideoSurface` 传入当前 `drama.posterUrl`。
|
||||
- `player-session-loading` 条件增加 `!widget.homeMode`:
|
||||
- 首页模式视频初始化期间只显示封面。
|
||||
- 非首页播放器继续显示原 session loading。
|
||||
- 首页 `player-ticket-loading` 不变。
|
||||
|
||||
## C. 测试
|
||||
|
||||
- 视频表面:非空 poster 显示 `player-video-poster`,空 poster 保留黑底且无封面。
|
||||
- 首页模式:视频未就绪时不出现 `player-session-loading`。
|
||||
- 非首页模式:视频未就绪时仍出现 `player-session-loading`。
|
||||
- 复跑既有播放器、首页相关测试。
|
||||
|
||||
## 门禁
|
||||
|
||||
- `dart analyze lib test`
|
||||
- `flutter test`
|
||||
- `flutter build apk --debug`
|
||||
|
||||
## Git
|
||||
|
||||
- ReelShort 提交:`fix(home): 频道切换用封面过渡`
|
||||
- `--no-ff` 合回 `develop` 并 push。
|
||||
- 作者 `Zhou Weidong <502333560@qq.com>`;禁止 `git add -A`。
|
||||
|
||||
## 约束
|
||||
|
||||
- 全程中文;不改后端、ReelShortWeb、specs。
|
||||
- 不安装或操作真机;完成后停住等待验收。
|
||||
@@ -24204,3 +24204,42 @@ Running Gradle task 'assembleDebug'... 8.7s
|
||||
- ReelShort develop 合并提交:`838ca2c merge: 合并 K95.1 首次切换频道无感`,
|
||||
已推送 `dfa79be..838ca2c`;K95 与 K95.1 已统一合回 `develop`。
|
||||
- 未改后端、ReelShortWeb、specs;未安装或操作真机,等待用户验收。
|
||||
|
||||
## 2026-10-21 K95.2 首切频道用封面过渡
|
||||
|
||||
- 已完整读取 K95.2 `docs/plans/INBOX.md`;本批次只改 ReelShort Flutter 客户端。
|
||||
- 已从最新 `origin/develop` 创建 `fix/k95.2-poster-transition` worktree。
|
||||
- 已先写计划 `docs/plans/2026-10-21-K95.2-poster-transition.md`,明确封面底层、
|
||||
视频淡入、首页隐藏 session 大转圈及非首页保持原行为。
|
||||
- 不改后端、ReelShortWeb、specs;不安装或操作真机。
|
||||
- 已完成 `PlayerVideoSurface(posterUrl)`:未 reveal 时优先显示
|
||||
`RemoteImage` 封面 `player-video-poster`,空封面继续保留黑色
|
||||
`player-fallback-background`;视频首帧仍用 200ms 淡入覆盖。
|
||||
- `PlayerPage` 已传入当前短剧 `posterUrl`,首页模式隐藏
|
||||
`player-session-loading`,非首页与本页 `player-ticket-loading` 行为不变。
|
||||
- 已补 poster 非空/为空、首页与非首页 session loading、既有播放页封面断言测试。
|
||||
|
||||
门禁原始输出:
|
||||
|
||||
```text
|
||||
$ dart analyze lib test
|
||||
Analyzing lib, test...
|
||||
No issues found!
|
||||
|
||||
$ flutter test --no-pub
|
||||
00:57 +547: All tests passed!
|
||||
|
||||
$ flutter build apk --debug
|
||||
Running Gradle task 'assembleDebug'... 27.6s
|
||||
✓ Built build/app/outputs/flutter-apk/app-debug.apk
|
||||
```
|
||||
|
||||
解读:静态分析零告警,547 项全量测试通过,debug APK 构建成功;
|
||||
`pubspec.lock` 已还原,无依赖变更。
|
||||
|
||||
### K95.2 交付结果
|
||||
|
||||
- ReelShort 功能提交:`c9adf8b fix(home): 频道切换用封面过渡`。
|
||||
- ReelShort develop 合并提交:`a2a491d merge: 合并 K95.2 首切频道封面过渡`,
|
||||
已推送 `838ca2c..a2a491d`。
|
||||
- 未改后端、ReelShortWeb、specs;未安装或操作真机,等待用户验收。
|
||||
Reference in new issue
Block a user