Simple Live:把四个平台装进同一窗口的开源直播聚合
【免费下载链接】dart_simple_live简简单单的看直播项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live
Simple Live 是一款开源的多平台直播聚合客户端,把哔哩哔哩、斗鱼、虎牙、抖音装进同一个窗口。它基于 Flutter + Dart 开发,覆盖 Android、iOS、Windows、macOS、Linux,还包含 Android TV 版本。
🚀 跑起来有多快
先装好 Flutter 3.38 及以上版本,这是唯一的环境要求。
git clone https://gitcode.com/GitHub_Trending/da/dart_simple_live cd dart_simple_live/simple_live_app flutter pub get flutter run项目不提供现成安装包,编译一下就能在本机跑起来。代码长在哪儿:simple_live_core 是核心库,负责四大直播的流获取与各平台弹幕协议;simple_live_app是主应用壳,simple_live_tv_app是电视端,simple_live_console则是给调试用的控制台程序。
打开之后你看到什么
启动后底部是主页、分类、我的三个主入口。主页顶部是平台页签,哔哩哔哩、斗鱼、虎牙、抖音随手切换,下方是瀑布流房间列表,缩略图、标题、在线人数一目了然。
应用提供深色、浅色双主题,两套配色从同一个种子色派生,在设置里随时切换,主题逻辑集中在 app_style.dart。
首屏能做的事很直接:
- 通过顶部页签切换平台,先看缩略图和在线人数
- 分类页按网游、手游等类目往下钻
- 搜索支持主播名、房间号、关键词三种方式
四个平台是怎么接进来的
每个平台都是一个独立类,接口差异都被收在各自实现里:
| 平台 | 内容侧重 | 对应源码文件 |
|---|---|---|
| 哔哩哔哩直播 | 二次元、综艺、游戏 | bilibili_site.dart |
| 斗鱼直播 | 电竞内容 | douyu_site.dart |
| 虎牙直播 | 专业电竞赛事 | huya_site.dart |
| 抖音直播 | 短视频生态的直播内容 | douyin_site.dart |
四个文件都放在simple_live_core/lib/src/目录下。想加第五个平台,只需实现 LiveSite 接口(分类、搜索、房间详情、播放地址、弹幕),再在 sites.dart 里注册,一共改两个文件。
🔧 弹幕、同步、工具箱——容易被忽略的细节
弹幕
弹幕基于 canvas_danmaku 渲染,实时显示、屏蔽、密度设置都有。各平台的协议实现集中在 simple_live_core/lib/src/danmaku/ 目录,想调整显示效果,改这里。
同步
支持三种方式:局域网内 UDP 发现设备、WebDAV 云存储(Nextcloud、坚果云等)、自建远程服务器。代码在simple_live_app/lib/modules/sync/下,能直接接你现有的网盘。
工具箱
粘贴四个平台任意一个的直播间链接就能直接跳转进房;还能导出直播源地址给第三方播放器使用。观看记录自动保存,关注管理也内置了,相关代码在modules/mine/parse/目录。
架构上的几个关键选择
技术栈不追新,每项都选了成熟方案:
- 状态管理用 GetX:状态、路由、依赖注入一套包搞定
- 网络用 Dio:拦截器机制成熟,四个平台的 API 调用统一处理
- 存储用 Hive:纯 Dart 实现,无需原生桥接
- 布局用 flutter_staggered_grid_view:瀑布流网格,适配各种尺寸的封面
核心库里还有统一的错误处理和多级日志,所以界面上的报错提示口径是一致的。
给你的几条实操建议
- 先开同步,多设备保持关注列表和历史一致。
- 弹幕密度按网络调,手机端开太多会卡。
- 夜间看用深色主题,白天换浅色。
- 常看的主播及时关注,开播不错过。
它的理念还是那句「简简单单的看直播」——无广告、不臃肿。想有个多平台直播的统一入口,编译跑起来就行。
【免费下载链接】dart_simple_live简简单单的看直播项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考