B站 动态流补齐「看大图 / 进详情 / 看评论」,YouTube 关注流不再淹没动态时间线;播放器 SABR 反复整场重载收口。 两条线:①动态流这一版把官方客户端的点击行为补齐了 —— 点图片看大图、点卡片进详情、详情里能看评论(还顺带把图文表情和 YouTube 挤占时间线两件事一起修了);②播放器侧按真机日志把「同一视频反复整场重载」拆成三条独立缺陷修掉。
变更
- 点图文图片看大图(P11-184)。全屏黑底、左右翻页、双击放大、双指缩放、放大后拖动、单击关闭;多图动态点右下角「+N」直接从第 4 张起开。自研实现,图片按屏宽取自 B站 CDN 的等比缩放版(不裁切)。
- 点卡片进动态详情页(P11-185)。正文不折叠(列表卡是 6 行折叠)、图片可点开大图、转发/评论/点赞计数、底部一级评论(热门/最新可切、滚到底按游标续拉)。超长正文若被服务端截断会给一行提示。
- 图文动态评论区打通(P11-185)。这条一共四层,每层都靠真机日志定位:端点(动态评论必须走
x/v2/reply/wbi/main,旧端点不吃动态类型)→ 加载闸门(此前一次请求都没发出去)→ 评论 oid(要用动态的comment_id_str,不是动态 id,否则服务端回「啥都木有」)→ 参数/响应模型(已逐项对照参考实现)。 - 视频动态卡对齐官方版式(P11-182)。补上 UP 的动态正文(此前只显示视频标题,动态文案整段丢失)、缩略图左下的时长与右下的播放 / 弹幕(图标 + 紧凑数字)、卡底的转发 / 评论 / 点赞计数行。
- 正文里的自定义表情(表情包)内联成小图(P11-183),不再显示成
[保佑]这类占位文字。 - YouTube 关注流按「最早一条 B站 动态」截断(P11-186)。此前 B站 动态翻到头之后,列表尾部会成片出现更旧的 YouTube 内容;现在以当前拉到的最早一条 B站 动态为界,后续翻页拉到更早的动态时边界随之后移,更旧的 YouTube 项才按时间穿插进来。
- 同一视频反复整场重载(P11-188 / P11-189)。真机抓到 32 分钟内 9 次整场重载,拆成三条独立缺陷:水位急救降档的带宽闸只看虚高的估计值(实测未知被当成放行,552 次抑制里 534 次是「实测未知」)、早解判据把 stall 冷却顺手清掉(冷却实际只活 4~5 秒,ABR 立刻爬回最高档再饿死)、同一档反复撞墙缺少递增惩罚。修后同一设备 26 分钟内重载 3 次,抑制 552 → 3,真降档 9 → 12。
已知
- 动态流里转发、专栏类型暂不渲染(接口会返回,当前静默丢弃);正文里的话题 / @ / 网页链接暂不可点跳转。
- 动态详情的评论不含楼中楼(二级评论);超长正文的超出一段依赖服务端的截断版本。
- TV 端的动态流同样受益于 YouTube 截断,但其翻页仍是追加,边界不会随翻页后移。
- 播放器侧剩 3 次重载的真因都在服务端供给层(慢滴 32.9s、新轨零字节挂死 21.6s),不在决策层,另开一轮处理。