3 步把手表变成直播屏:Dart Simple Live 的 Flutter 穿戴开发完整指南
【免费下载链接】dart_simple_live简简单单的看直播项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live
Dart Simple Live 是一个用 Dart 写的聚合直播应用,覆盖哔哩哔哩、斗鱼、虎牙、抖音四大平台。你会 Flutter,就能按这份指南把它搬上手表,拿到一条智能手表直播 + Flutter 穿戴开发的完整路径。
手表上看直播的 3 个真实场景
戴表看直播的高频场景有 3 个,核心都是“屏幕比手机更近”:
- 地铁通勤:想看时抬腕瞄一眼,不想看就放下,不用每次都掏出手机。
- 健身骑车:手表屏幕天然在视线里,顺手追一下直播高光。
- 等餐等下课:三分钟看完重点,全程手不用一直捧着手机。
3 分钟看懂架构:看哪 4 层
先说结论:手表端一行协议代码都不用写,你只负责第 4 层的界面。项目整体分 4 层:
- 核心库 simple_live_core/:统一封装各平台的房间数据、播放地址、弹幕,是唯一跟平台打交道的层。
- 平台接口层:simple_live_core/lib/src/ 下四个文件,
huya_site.dart这类,一个平台一个实现。 - 弹幕协议层:simple_live_core/lib/src/danmaku/ 把各平台 WebSocket 弹幕消息解码成统一结构,界面不用区分平台。
- 手表 UI 层:你的新代码,列表页 + 小播放器,搭在 wear 插件上。
| 组件 | 版本 | 一句话作用 |
|---|---|---|
| Flutter | 3.38 | 跨平台 UI 框架,负责生成手表端工程 |
| simple_live_core | 1.0.3 | 聚合直播核心库:房间、播放地址、弹幕 |
| media_kit | 1.2.2 | 播放引擎,一行 open 就能播 |
手表端屏幕、内存、电量、流量怎么解决
120 像素屏幕上卡片怎么摆
120×120pt 的卡片就是手表的极限,一屏一张卡片是唯一摆法。
- 一张缩略图 + 10 字以内标题 + 一行在线人数,不给二级页面。
- 原来要点两下才能进直播间,现在滑一下就能选中。
内存怎么压到 50MB 以内
手表内存小,不能让它换页,整条线控制在 50MB。
- 缩略图压到 200px 宽再统一缓存。
- 滑出可见区域的卡片直接停掉图片加载。
省电刷新策略怎么按电量分档
目标是连续看 3 小时以上;原来每 5 秒轮询一次,现在只靠事件触发刷新。
- 亮屏时,只让弹幕、状态变化驱动更新。
- 熄屏后挂起弹幕,播放降到最低帧率。
流量怎么省掉 40%
按“只取要的”原则抓数据,预计省 40% 流量。
- 只拉封面、标题、状态,不拉详情页。
- 默认播放地址直接换低码率档位。
从零跑通:3 步搭出直播画面
第 1 步:装依赖,3 条命令
git clone https://gitcode.com/GitHub_Trending/da/dart_simple_live cd dart_simple_live/simple_live_app flutter pub get依赖清单 5 行,填进 pubspec 即可:
simple_live_core1.0.3 —— 聚合直播核心库media_kit1.2.2 —— 播放引擎media_kit_video2.0.0 —— 播放界面控件wear1.0.0 —— Wear OS(谷歌给智能手表做的系统)支持- Flutter 3.38 —— 跨平台 UI 框架
第 2 步:建列表页
从核心库拿LiveRoomItem(核心库里的房间数据模型),按卡片网格摆出来。可以参考手机端 simple_live_app/ 或电视端 simple_live_tv_app/ 的现成写法:数据来自核心库,界面代码你自己写。
第 3 步:接播放器
播放器初始化就是new Player()之后open(url),url 从核心库拿。手机端写法在 simple_live_app/lib/modules/live_room/,手表版把它缩小就行。
交互和省电策略怎么设计
手表没有实体按键,交互全靠手势:点屏幕出控制栏,2 秒不动自动隐藏,长按返回。原来要找专门的返回键,现在长按一下就回。刷新和功能降级按电量分 3 档:
- 电量 >50%:每 5 秒刷新,弹幕、正常画质全开。
- 电量 20%–50%:每 15 秒刷新,保留弹幕但降帧率。
- 电量 <20%:每 30 秒刷新,关弹幕、切最低画质;低于 15% 连自动刷新一起停。
上线前查这 4 项
| 项目 | 做法 | 达标线 |
|---|---|---|
| 性能 | 连续播放并盯内存占用 | ≤50MB |
| 电量 | 真机连续播放 3 小时 | >3 小时 |
| 兼容 | 主流手表型号多设备实测 | 布局不溢出 |
| 构建 | flutter build apk --release | 手表目标包正常产出 |
接下来能玩出的 3 个方向
- 健康数据与直播联动
- 语音发送弹幕
- 收藏直播离线缓存
把 Simple Live 搬上手表的路径就三步:用核心库、做界面、省电。现在把它跑上你的手表,今晚就能看到第一帧直播画面。
【免费下载链接】dart_simple_live简简单单的看直播项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考