newBV 是基于 BV 重构的 哔哩哔哩 第三方 Android TV
客户端,使用 Jetpack Compose 开发,支持 Android 5.0+(minSdk 21)。
这不是 BV 的 1:1 复刻,而是架构重构 + 功能增强。保留了原版 BV 核心使用体验的同时,新增了许多呼声很高的功能,并重构了软件架构。
原版 BV 的代码仍保留在本仓库的
bv-feature分支。
- 直播观看:直播首页(推荐 / 分区 / 关注 / 直播排行榜)、直播播放(HLS/FLV,多线路手动切换)、HDR 档位(按设备解码能力过滤与展示)、WebSocket 实时弹幕、实时人气
- 评论:详情页评论预览、独立评论弹窗(全部 / 热门、无限滚动、楼中楼、评论点赞)、根评论楼中楼预览、评论相对时间、回复手动分页、播放器内评论
- 缓存自动清理:缓存阈值可调(50/100/200/500MB / 不限制)、LRU 自动清理、手动清理、日志占用查看及清理
- 触屏适配:D-pad / 触屏运行时双模式,播放器手势(快进 / 亮度 / 音量)
- 主题:黑夜 / 白天 / 跟随系统三档,全新品牌配色
- 视频卡片已播进度条:历史 / 稍后再看 / UP 主页卡片显示观看进度
- 播放器增强:点赞·投币·收藏快捷键(长按一键三连)、同时观看人数、自定义快捷键触发提示、起播自动降档与线路切换提示、打开详情 / UP 主空间返回后续播、弹幕分段加载(基于AkDanmaku自研
danmaku-engine) - 诊断与崩溃:关键操作诊断日志 + 局域网日志网页端;本地崩溃日志 + 可选自建端点上报
- 单 Activity + Navigation-Compose
- 完全基于 StateFlow 重构,单向数据流(UDF)
- Hilt 依赖注入
- 仅 Media3 播放器,VOD + Live 双兼容
- 完全删除代理逻辑(ProxyArea / Ali CDN 等)
- 模块化拆分:
app/core/data/bili-api/player/danmaku/danmaku-engine/bili-subtitle
在 TV 1080p 模拟器(x86 / API 28)、release 混淆构建下与原版 BV 对比:
| 指标 | newBV | 原版 BV | 提升 |
|---|---|---|---|
| 冷启动 → 首页首帧 | 576 ms | 1076 ms | 快 46.5%(约 1.87×) |
| Release APK 体积 | 7.20 MiB | 11.97 MiB | 小 39.8%(约 1.66×) |
- 补全单元测试
- 补全接口集成测试
- JDK 17
- Android SDK(compileSdk 36)
- aaa1115910/bv — 本项目源自 BV 的重构
- cat3399/blbl — 部分实现(弹幕分段加载等)参考 / 移植自该项目
- akdanmaku — 弹幕渲染引擎
MIT © aaa1115910, Frost819
