Releases: June6699/dart_simple_live
Release list
Simple Live v1.12.7-pre
本版本重点修复桌面端播放器快捷键在中文输入法下不响应的问题,并优化桌面端直播间切换时列表位置被重置的体验。
TV 端对应版本见 tv_v1.7.8。
重点更新
- 修复 Windows、macOS、Linux 桌面端在中文输入法下,播放器快捷键需要切换到英文输入法才生效的问题。
- 桌面端播放器快捷键改为按物理键识别,中文输入法开启时也可以直接使用
F、D、M、R、C等快捷键。 - 播放器区域使用快捷键时会拦截输入法候选框;搜索框、弹幕输入框、设置输入项等文本输入场景保持中文输入法正常工作。
- 修复桌面端全屏播放时,从右侧关注、观看历史、推荐等列表切换直播间后,列表偶发自动跳回顶部的问题;现在会尽量保持当前滚动位置。
- 移动端与 TV 端同步检查了直播间切换列表逻辑,避免同类列表跳转体验退化。
- 其他细小的体验问题。
Android TV v1.7.8-pre
本版本跟随主 App 修复播放器快捷键与直播间切换体验,并补充 TV 端播放稳定性修复。
重点更新
- 修复 TV 端直播间控制器缺少唤醒锁依赖导致的构建问题,保持直播播放期间的屏幕常亮逻辑可用。
- 同步检查 TV / TV-Windows 直播间切换链路,避免从关注、历史、推荐等列表进入直播间后列表状态异常重置。
- TV-Windows 保持与主 App 一致的本地播放依赖打包方式,确保播放器相关能力正常可用。
- 其他细小的体验问题。
Android TV tv_v1.7.7
正式版本
这个版本把 TV 端推进到 1.7.7+10707,包含 Android TV APK 和 TV-Windows 包。TV-Windows 是在 Windows 上运行的 TV UI,不是主 Windows App,也不是 Android TV APK。
重点更新
- 关注导入、配置包恢复、局域网同步、房间同步、WebDAV 恢复只落库,不再导入完成后自动刷新直播状态。
- TV / TV-Windows 导入与同步进度统一为进度弹窗,显示阶段、进度条和
current/total,过程不再每 200 条弹 toast,完成后只汇总提示一次。 - 关注排序统一为:特别关注直播中、特别关注未直播 / 未知、普通关注直播中、普通关注未直播 / 未知;不刷新时特别关注也会排在第一页前部。
- 关注总数超过 400 自动分页,底部悬浮分页条提供上一页、下一页、刷新当前页、刷新全部。
- 关注页新增
默认 / 紧凑 / 卡片三种显示样式,并新增“展示直播封面”开关,默认关闭;关闭时使用头像信息布局,开启后才显示真实直播间封面图。 - 关注页新增“仅显示开播”、本地搜索主播名、进入关注页后自动刷新;自动刷新默认关闭,开启后先显示本地列表,再异步执行全量刷新。
- 关注刷新线程数统一为
0 = 自动,自动最多 4 路;手动可选 1-8 路,并直接覆盖自动判断。 - TV-Windows 支持
F真全屏、D开关弹幕、R刷新当前直播间、M静音 / 取消静音快捷键。 - TV-Windows 支持
PageUp/PageDown和Alt+Left/Alt+Right快捷翻页。 - 自动刷新不会与上一轮刷新重叠;大关注量用户刷新很久时,只记录“上一轮仍在刷新,跳过本次自动刷新”,不弹 toast、不重启旧任务。
- 自动刷新间隔改为小时 / 分钟输入,并在设置页补充大量关注说明。
- TV 新增完整版 WebDAV:账号配置、登录校验、登出、上传完整备份、恢复完整备份,沿用主 App 的
SimpleLive_Profile_v2.json+backup.zip格式。 - TV 直播间新增特别关注入口;未关注时先关注再设为特别关注,取消关注会同步取消特别关注。
- 新增懒人模式开关:关播后自动切到下一个直播间、播放失败且线路 / 重试耗尽后自动切到下一个直播间,默认关闭。
- TV 抖音专有表情做大屏优化:字号、行高、图片尺寸、文本和表情基线对齐更适合电视。
- 抖音刷新 / 播放并发做应用内缓解:刷新队列降低当前播放房间干扰,抖音状态刷新与详情补齐分离,降低 444 触发概率。
- 快手主页直播列表改为按热度从高到低展示,和其他平台主页排序体验对齐。
多屏同播与端口
- TV-Windows 多屏同播保持独立进程 / 独立窗口方案,子窗口只负责播放,不再注册
SyncService,避免抢占23234/23235。 - 主 App desktop secondary 播放窗口也不再注册
SyncService,减少同机多开时的局域网同步端口冲突。 - UDP / HTTP 同步服务绑定失败改为非致命错误,不影响播放和主界面。
- 同步页端口冲突文案改为明确提示:
23234 端口已被占用,请关闭其他 Simple Live / TV-Windows 窗口后重试。 - Android TV 多屏同播仍是同一 App 内多个播放器宫格,不等同于 TV-Windows 多窗口;本版增加房间详情、清晰度、播放地址、
player.open、media error 日志。 - Android TV 多屏默认静音、默认最低清晰度,并限制最多 4 路,降低模拟器 / 盒子多播放器 Surface 或 mpv 多实例灰屏概率。
说明
- Android TV 真机 / 盒子建议优先安装 arm64-v8a;x86_64 主要用于 x86 模拟器。
- 如果 Android 模拟器是 x86_64,请测试 x86_64 APK,不建议用 arm64-v8a APK 判断多屏稳定性。
- Windows-TV 如遇关闭时报错,可同主 Windows App 一样检查
Windows Error Reporting Service是否被禁用;issue #64 反馈启用该服务后可解决。
下载说明
- Android TV arm64:
SimpleLive-TV-tv_v1.7.7-arm64-v8a-release.apk - Android TV armeabi-v7a:
SimpleLive-TV-tv_v1.7.7-armeabi-v7a-release.apk - Android TV x86_64:
SimpleLive-TV-tv_v1.7.7-x86_64-release.apk - Windows 上运行 TV 端:
SimpleLiveTV-Windows-tv_v1.7.7.zip
Simple Live v1.12.6
正式版本
这个版本把主 App 推进到 1.12.6+11206,重点是关注页展示与筛选整理、桌面端播放手势修复、抖音关注刷新链路收敛,以及之前的同步 / 导入稳定性、大关注分页、懒人模式与桌面多开端口冲突修复。TV 端和 TV-Windows 对应版本见 tv_v1.7.7。
快手cookie导入教程见 快手 抖音 cookie 导入SimpleLive教程
或者国内站点 快手 抖音 cookie 导入SimpleLive教程
重点更新
- 支持快手直播平台,感谢 @xuanxuan123xuan 的开发。
- 修复桌面端直播页上下滑调节音量 / 亮度时从 0 开始计算的问题;现在会从当前播放器音量和当前应用亮度继续增减。
- 新增播放页“滑动调节音量/亮度”开关,放在
直播间设置 > 播放器,默认开启;关闭后不再响应这类手势。 - 关注页新增
默认 / 紧凑 / 卡片三种显示样式,并新增“展示直播封面”开关,默认关闭;关闭时使用更紧凑的头像信息列表,开启后才显示真实直播间封面图。 - 关注页新增“仅显示开播”、本地搜索主播名、进入关注页后自动刷新三项能力;自动刷新默认关闭,开启后会先显示本地列表,再异步执行一次全量刷新。
- 关注刷新线程数统一为
0 = 自动,自动最多 4 路;手动可选 1-8 路,并直接覆盖自动判断。 - 抖音关注刷新改成“状态阶段”和“手动详情补齐阶段”分离:自动刷新只跑状态接口,手动刷新才低并发补齐封面 / 标题并做抖音 roomId 校正,降低 444 触发概率。
- 快手主页直播列表改为按热度从高到低展示,和其他平台主页排序体验对齐。
- 关注导入、配置包恢复、局域网同步、房间同步、WebDAV 恢复只落库,不再导入完成后自动刷新直播状态。
- 导入 / 同步完成后只汇总提示一次,避免大量关注导入时每 200 条频繁提示。
- “刷新频繁”只在用户主动刷新并触发冷却时出现,纯导入链路不再弹出。
- 关注排序统一为:特别关注直播中、特别关注未直播 / 未知、普通关注直播中、普通关注未直播 / 未知。
- 关注总数超过 400 自动分页,底部悬浮分页条提供上一页、下一页、刷新当前页、刷新全部;移动端支持左右滑翻页。
- 刷新当前页会先刷新全量特别关注,再刷新当前页普通关注;刷新全部会再补全量普通关注。
- 刷新任务会降低当前播放房间的干扰,抖音刷新并发更保守,缓解刷新中打开抖音直播间的周期性卡顿。
- 新增懒人模式开关:关播后自动切到下一个直播间、播放失败且线路 / 重试耗尽后自动切到下一个直播间,默认关闭。
- 桌面端“观看历史”改为和“关注列表”一致的长条样式,“同类推荐”保持原样。
- 桌面端 mpv 性能档位、同步分块、大配置批量写库、虎牙分类缓存等改动继续保留。
桌面端与同步
- 主 App desktop secondary 播放窗口不再注册
SyncService,避免多屏 / 多窗口播放时抢占23234/23235。 - UDP / HTTP 同步服务绑定失败改为非致命错误,不影响播放和主界面。
- 同步页端口冲突文案改为明确提示:
23234 端口已被占用,请关闭其他 Simple Live / TV-Windows 窗口后重试。 - 同机同时打开主 App 和 TV-Windows 时,如果端口冲突,应用不会崩溃,局域网同步页会显示明确原因。
- Windows 主 App 来自
simple_live_app,正式包为完整 zip,不发布单 exe。 - 修复 Windows install 阶段缺失
build/native_assets/windows时导致INSTALL.vcxproj失败的问题。 - 如果关闭 Simple Live 时 Windows 弹出系统报错,可检查
Windows Error Reporting Service是否被禁用;将其设为“自动”并启动服务后,issue #64 反馈该方案有效。
下载说明
- Android arm64:
SimpleLive-v1.12.6-arm64-v8a-release.apk - Android armeabi-v7a:
SimpleLive-v1.12.6-armeabi-v7a-release.apk - Android x86_64:
SimpleLive-v1.12.6-x86_64-release.apk - Windows:
SimpleLive-Windows-v1.12.6.zip - Linux zip:
SimpleLive-Linux-v1.12.6.zip - Linux deb:
SimpleLive-Linux-v1.12.6-amd64.deb - macOS dmg:
simple_live_app-1.12.6+11206-macos.dmg - macOS zip:
simple_live_app-1.12.6+11206-macos.zip - iOS 未签名 IPA:
ios_no_sign.ipa
v1.12.5-fix
v1.12.5
这版把 v1.12.4 之后几轮已经完成的直播间、多开、弹幕、表情、关注页、同步和平台适配改动合并发布。重点是桌面端多开时可以收起右侧聊天区,重复弹幕过滤更适合高刷屏直播间,抖音表情显示更完整,iOS 返回手势和 Windows / Android 的播放体验也做了一轮修补。发布前建议先在设置里导出一份配置备份。
直播间与播放器
- 桌面端直播间非全屏状态新增右侧栏折叠功能,可收起右侧资料 / 聊天 / 标签页整栏,只保留窄展开按钮,让播放器占用更多窗口空间,方便多开时同时摆放更多直播间。
- Windows 关注页多开改为打开多个独立直播窗口,并新增“多开设置”:可设置默认收起聊天区和窗口间距;间距设为
0px时,多开窗口会使用无边框铺排,尽量贴合屏幕和相邻窗口。 - 多开设置新增“一键关闭所有多开窗口”,可关闭本次从关注页多开启动的独立直播窗口。
- 多开派生窗口默认使用轻量折叠视图,收起底部 / 右侧聊天信息区和底部操作栏,并默认不渲染弹幕,减少四开时的 UI 构建、列表渲染和弹幕绘制负担。
- 多开数量请根据电脑性能选择;虽然本版已做轻量化优化,低配电脑四宫格仍可能明显卡顿,建议先从 2 个窗口开始测试。
- 右侧栏折叠仅在 Windows / macOS / Linux 桌面端显示;移动端、全屏播放、小窗播放保持原有布局和操作习惯。
- 桌面端直播间横屏非全屏去掉内部顶栏,改为播放器左上角返回浮层和右侧栏右上角更多浮层,避免 Windows 顶部灰色空白带挤占播放区域。
- 桌面端直播间所有非全屏窗口都改用播放器浮层返回 / 更多按钮,窗口比例变化时也不再露出顶部灰带;对应 issue #43。
- iOS 直播间普通状态支持左侧边缘滑动返回,对应 issue #39,并使用 Cupertino 风格路由转场;全屏状态仍保持返回时先退出全屏,避免误退出直播间。
- iOS 左滑返回只走系统边缘手势,不新增整页横向滑动,尽量避免和播放器手势、弹幕层、聊天区交互冲突。
- iOS 非全屏直播页统一使用明确 16:9 播放器尺寸的布局,规避 iPadOS 横屏 Row 布局下白屏但有声音的问题;对应 issue #41。
- 播放页标签和全屏长按快捷入口加入贡献榜 / 亲密榜,虎牙直播间会自动跳过该功能。
- Android / iOS 全屏长按快捷入口支持自定义启用项和顺序,默认关注列表、观看历史、同类推荐全部展示;只启用一个时长按直接打开,全部关闭时提示“没有东西可展示”。
- 主 App 新增“播放页设置”,播放页标签顺序从“主页设置”移入这里,入口位于“我的”页。
- 播放页“聊天 / SC 或头条 / 关注 / 设置”等标签支持自定义排序;不存在的页签不显示,存在的页签按保存顺序显示。
- 播放页设置新增桌面快捷键配置,支持自定义或关闭“切换全屏、显示 / 隐藏弹幕、静音 / 取消静音、刷新直播间、收起 / 展开聊天区”等直播间快捷键;默认快捷键为
F、D、M、R、C。 - 播放页右侧标签按语义 key 记忆当前页,从 B 站 / 虎牙这类有 SC / 头条标签的平台切到其他平台时,停留在“关注”标签不再跳走。
- B 站 SC / 虎牙头条支持按消失时间正序或倒序排序,播放器悬浮层和聊天区列表使用同一排序设置。
- 手动刷新直播间时同步刷新视频、弹幕、SC / 头条和贡献榜;全平台热度增加 10 秒详情刷新兜底。
- 播放页临时静音规则调整为:静音后上滑 / 下滑调节音量和点击静音按钮可解除;系统音量键变化不解除当前直播间静音,避免多开时误把已静音房间恢复声音。
- Android 非全屏播放页恢复竖屏布局,适配 realme 侧边栏双击全屏后再次双击退出的场景。
- Android 平板横屏进入直播间再返回首页后,不再被锁成窄竖屏布局;小米平板 6S Pro 等横屏平板会恢复正常平板宽屏布局。
- PiP / 小窗进入和返回时不再主动清空弹幕层,减少从小窗回全屏时弹幕像重新刷新的问题。
- 播放页右上角更多菜单和底部弹窗统一加入安全区,避免 Android 虚拟导航栏遮挡底部菜单项。
弹幕过滤
- 重复弹幕过滤新增“刷屏严父”模式,忽略用户只按弹幕内容全局去重,主 App 全平台和 TV 端均生效。
- 切到“刷屏严父”会自动开启重复过滤、窗口重置为默认 10 条并隐藏过滤步长;窗口可在 5 到 100 条内调整,超过 20 条时提示弹幕可能明显变少。
- 普通重复过滤继续保留“同一用户在最近 N 条内发送相同内容只显示一次”的逻辑,默认窗口为 10。
- 重复弹幕过滤补充“过滤步长”,默认 2,最低 1;主 App 和 TV 端都可设置,减少高弹幕量场景下频繁裁剪窗口的开销。
- 重复弹幕过滤从列表线性扫描改为队列 + 计数表,查重为平均 O(1),窗口回收仍按用户设置的最近 N 条限制。
- 重复弹幕指纹会纳入用户、消息文本、富文本片段、表情图片 URL 等内容,兼容 emoji、抖音表情、乱码样式文本和图片表情消息。
- TV 端弹幕设置新增重复过滤开关、过滤窗口、过滤步长和“刷屏严父”模式。
表情与弹幕显示
- 完善抖音直播弹幕本地表情显示,内置 141 个抖音平台表情资源。
- 抖音弹幕表情改为按
rtfContent.piecesList富文本片段解析,聊天区按文字和图片顺序显示,不再只把图片追加到消息末尾。 - 抖音表情图片无法解析成 URL 时保留文字占位,减少表情消息内容丢失;不再把背景图、礼物图混成普通聊天表情。
LiveMessage增加有序富文本片段,旧的imageUrls仍保留,主 App 和 TV 端继续兼容旧渲染路径。- B 站和抖音消息里的图片字段可在主 App 聊天区、播放器浮层和 TV 播放器弹幕中显示。
- B 站弹幕表情按
[表情名]解析为富文本片段,聊天区和悬浮弹幕不再同时显示源码文本和表情图;抖音富文本表情沿用同一渲染优先级。 NetImage和弹幕画布支持本地asset://表情资源,主 App 和 TV 端都能复用。- 弹幕覆盖层在返回前台、窗口重新聚焦、全屏 / 小窗切换时不再主动重建,底层
canvas_danmaku支持配置变化时原地更新,尽量保持现有弹幕轨迹继续移动。
关注页、搜索与同步
- 删除关注页“读取中”分组,未知状态按未开播处理;关注页记住上次分组模式和选中分组,无有效记录时默认全部。
- 修复分页基类第一页刷新后可能被追加到旧列表的问题,避免 Android 关注页连续刷新后同一主播在 UI 中重复出现;关注页刷新改为服务加载后直接重排当前列表,并按关注 id 做展示去重兜底。
- 本轮基本重构了关注刷新、配置导入、配置备份和多种同步链路,会先自动评估配置复杂度,再选择不同处理策略。普通用户仍走更快的直接批量路径;关注、标签、历史或屏蔽词很多的用户会自动进入分批、合并、低并发和延迟刷新路径,优先保证界面不卡死、同步不中断、数据可恢复。
- 复杂度评估会综合关注数量、标签数量、历史记录数量、屏蔽词数量和配置包体积:300 条以内走普通快速路径;301 到 1000 条会批量写入并分批让出 UI;1001 到 3000 条会分段导入 / 同步并合并刷新通知;超过 3000 条进入超大列表模式,不在导入或同步结束瞬间立即全量刷新直播状态,避免前台被一次性网络请求拖死。
- 配置包导入、本地同步、SignalR 房间同步、WebDAV 恢复、文本 / 文件关注导入统一走批量导入 helper。导入时先解析为内存列表,按主键去重、跳过异常项、批量写入,再按数据规模决定是否让出 UI 线程和是否延迟刷新状态,减少几千条关注时逐条写库造成的卡顿。
- 历史记录导入和同步从逐条
get/put改为内存 Map 合并:先按房间 / 平台生成 key,对同一直播间只保留更新时间更新的一条,再一次性批量写入。这样能把大量重复历史记录压缩后再落库,减少 Hive 读写次数和对象分配。 - 标签、关注、历史、屏蔽词同步尽量复用同一套“解析 -> 去重 -> 合并 -> 批量写入 -> 汇总结果”的流程,导入结果会记录导入数、跳过数和耗时,避免一条坏数据导致整包失败。
- 本地同步和 SignalR 房间同步发送端会按数据规模自动分段。小配置仍直接发送;大配置会拆成多个旧协议兼容的数据段,第一段带覆盖标记,后续段走合并写入,旧端仍能按原接口接收,新端则能避免一次性发送超大 JSON 卡住。
- 关注直播状态刷新并发改为后台自动判断,用户不可手动配置:200 条内 32 并发,201 到 800 条 20 并发,801 到 2000 条 12 并发,超过 2000 条降到 8 并发;刷新时保留平台交错,避免同一平台请求瞬间堆积。
- 刷新任务增加互斥和冷却:如果上一轮关注状态刷新还没结束,新刷新不会再叠一轮;导入或同步刚完成时,大列表会延后状态刷新,让 UI 先恢复可操作。
- WebDAV 恢复改为先把云端
backup.zip下载到临时文件再读取,避免直接read()失败;恢复过程复用批量导入 helper,并取消捕获控制器对象的 isolate 解压,修复RemoteSyncWebDAVController/DAVClient无法跨 isolate 发送导致的恢复失败。 - WebDAV 备份不再把完整配置包和旧格式文件重复写入临时目录,改为用同一份 profile map 在内存中生成兼容 zip,减少磁盘临时文件、重复序列化和大配置包的峰值内存。
- 同步和备份日志不再打印完整大 JSON,只记录关注 / 标签 / 历史 / 屏蔽词条数、payload 字节数、耗时、导入数和跳过数,降低日志体积,也避免日志系统本身拖慢大配置同步。
- 搜索页默认平台记忆改为按平台
siteId保存,避免配置同步或平台排序变化后选错平台;从首页当前平台进入搜索时默认选中该平台,并保留上一次搜索页停留的平台。 - 抖音分类缺少远程图时使用本地自绘 icon。
抖音账号与 Cookie
- 抖音房间名 / 主播名搜索继续接入账号 Cookie;TV 端可通过手机或电脑端同步 Cookie。
- 移动端抖音账号移除打开 App 登录入口,只保留 Cookie 粘贴和文件导入,避免误以为 App 登录后就能直接获取完整网页登录 Cookie。
- 抖音 Cookie 登录框兼容纯 Cookie、
Cookie: xxx和整段请求头粘贴;如果浏览器复制出来是两列格式里的cookie+ 下一行值,App 会自动提取下一行的完整 Cookie。 - 抖音账号页 Cookie 摘要修复
Obx未订阅响应式变量导致的灰色错误占位;保存、清除 Cookie 后会立即刷新状态。 - 抖音 Cookie 摘要和配置弹窗会尝试从完整 Cookie 的
sid_guard解析预计剩余有效期,并每分钟刷新倒计时;仅ttwid或无法解析时明确提示有效期无法判断。 - 已用桌面浏览器登录后的抖音请求头 Cookie 验证
aweme/v1/web/live/search/,返回status_code: 0且有直播搜索数据;只填ttwid不足以保证主播 / 房间搜索可用。 - 抖音房间详情、a_bogus、Web Cookie、HTML 解析、画质读取、播放器打开和 websocket 解码补充耗时日志;抖音 Web Cookie 增加短缓存,热门直播间高频弹幕改为批量投递。
桌面与系统适配
- 桌面端新增“记住窗口大小和位置”选项,默认关闭。
- Windows 从最大化窗口双击进入全屏时,先恢复成普通居中窗口,再进入全屏;全屏完成后再次应用无边框、无阴影、隐藏标题栏,并在短延迟后补一次,避免窗口边框短暂重新出现导致边缘错位。
- Windows 桌面窗口显示改到首帧后执行,并增加 show / focus 兜底日志,用于继续排查 issue #37 里只有进程或白屏的问题。
- Windows 直播间加载不再使用全局 SmartDialog loading 遮罩,避免直播内容已加载但整窗仍被灰白遮罩覆盖的问题;本次 Windows
fix包已包含该修复。 - Windows 关闭时先释放播放器、同步服务和日志资源,再销毁窗口,降低关闭弹窗概率。
- iOS / macOS 平台配置同步当前功能面,补充局域网同步、扫码、截图保存和 HTTP 播放 / WebDAV 所需的权限说明。
实时字幕
- 实时字幕入口暂时下线;设置页、直播间更多菜单、播放页字幕浮层、模型推荐和样式设置不再对外展示,并在启动时强制关闭历史开关,避免 ASR 初始化卡死或反复闪退。
- 实时字幕模型路径选择逻辑已改为优先选择模型文件夹,适配一个模型由多个文件组成的情况;相关代码暂保留,后续重新评估 ASR 内存和稳定性后再开放。
- README 中保留并补充字幕模型下载说明,包括高级 / 中级 / 甜点级三个档位需要下载哪些文件、哪些文件不需要下载,以及“选一个档位,把该档位所有文件放同一个文件夹,再在 App 里选择这个文件夹”的使用方式。
Windows 白屏排查记录
- 排查 issue #37:用户反馈 1.12.4 Windows zip 在 Win11 25H2 打开白屏,1.12.3 可正常打开。
- 对比 1.12.3 与 1.12.4 源码变更,未发现 Windows runner /
main.dart启动链路变更;差异主要集中在直播间、同步、弹幕、抖音账号等业务代码。 - 对比两个 Windows release zip,1.12.4 额外包含
dartjni.dll、onnxruntime.dll、sherpa-onnx-c-api.dll,且 release 包构建链与 1.12.3 不同,问题更像 Windows 发布包 / 构建链或运行时依赖差异,需要后续用 Windows 实机包继续验证。
参考与相关反馈
- 抖音平台表情资源参考:EmojiAll 抖音平台表情。
- 桌面端多开相关反馈:issue #13。
- TV 多屏同播 / 多开相关反馈:issue #30。
- iOS 直播间返回手势相关反馈:issue #39。
已验证
- 主 App:
flutter analyze通过,No issues found。 - TV App:
flutter analyze通过,No issues found。 - Core:
dart test test/live_repeated_danmu_summary_test.dart通过。 - 主 App Android:
flutter build apk --release通过。 - 主 App Android ABI:
flutter build apk --release --split-per-abi通过。 - 主 App Android 平板方向恢复:退出直播间 / 退出全屏后恢复系统自动方向,平板横屏不再被强制锁为手机竖屏布局。
- 主 App Windows:
flutter build windows --release通过。 - 主 App Linux:WSL Ubuntu 22.04 + Flutter 3.38.10 构建通过;该本地 Linux 包更适合本机 / Ubuntu 22.04 冒烟,面向 Ubuntu 24.04 的正式 Linux 包建议仍走 GitHub Actions 或 Ubuntu 24.04 环境。
- macOS:GitHub Actions
app-build-macos-manual通过并上传 dmg / zip。 - iOS:GitHub Actions
app-build-ios-manual通过并上传未签名 IPA。 - Windows 最大化后双击进入全屏已复测通过;边缘不再出现窗口框和错位。
下载说明
- Android 通用包:
simple_live_app-1.12.5+11205-android-fix.apk,包含多种架构,体积更大,适合不确定设备架构时下载。 - Android 分 ABI 包:
SimpleLive-v1.12.5-arm64-v8a-fix-release.apk、SimpleLive-v1.12.5-armeabi-v7a-fix-release.apk、SimpleLive-v1.12.5-x86_64-fix-release.apk。大多数安卓手机和平板(包括小米平板 6S Pro)优先使用arm64-v8a,老 32 位设备使用armeabi-v7a,模拟器或少数 x86 设备使用x86_64。 - Windows:
simple_live_app-1.12.5+11205-windows-fix.zip。 - macOS:
simple_live_app-1.12.5+11205-macos-fix.dmg或simple_live_app-1.12.5+11205-macos-fix.zip,首次打开如遇系统拦截,按 macOS 安全设置放行。 - iOS:
ios_no_sign-fix.ipa,未签名,需要自行签名或使用自有安装方式。 - Linux:
SimpleLive-linux-x64-v1.12.5-fix.zip或SimpleLive-linux-amd64-v1.12.5-fix.deb;本地 deb / zip 由 WSL Ubuntu 22.04 构建,Ubuntu 24.04 用户如遇依赖差异可优先等待后续 24.04 环境包。
Android TV tv_v1.7.6
tv_v1.7.6
正式版本。TV 端这版跟随主 App v1.12.5 同步了一整轮核心改动,重点是大量关注列表稳定性、抖音本地表情资源、重复弹幕过滤和高弹幕量场景的性能优化。简单说:刷屏可以压得更干净,抖音表情不再大面积显示成 [笑哭] 这类源码,关注列表在数据很多时也更稳。
重点更新
- 重复弹幕过滤新增“刷屏严父”模式,忽略发送用户,只按弹幕内容全局去重,适合全屏刷同一句话的直播间。
- 切到“刷屏严父”时会自动开启重复过滤、窗口重置为默认 10 条,并隐藏普通模式里的过滤步长;窗口仍可在 5 到 100 条内手动调整。
- 重复弹幕过滤底层从列表线性扫描改成队列 + 计数表,查重平均 O(1),高弹幕量房间更不容易被过滤逻辑拖慢。
- 完善抖音直播弹幕本地表情显示,内置 141 个抖音平台表情资源。
- 抖音弹幕表情改为按富文本片段顺序解析,文字和图片按原消息顺序显示,不再把所有图片堆到消息末尾。
- TV 端关注列表改为分页加载,并补上刷新冷却、任务互斥和展示去重,降低大量关注场景下卡顿、重复展示或闪退的概率。
- 抖音房间名 / 主播名搜索继续接入账号 Cookie;TV 端可以通过手机端或桌面端同步 Cookie 后使用。
弹幕过滤
- 普通重复过滤继续保留“同一用户在最近 N 条内发送相同内容只显示一次”的逻辑,默认窗口为 10。
- “刷屏严父”模式不再区分用户,同一句内容在当前窗口内只显示一次,更适合屏蔽多人一起复制刷屏。
- 刷屏严父模式下不使用过滤步长;弹幕窗口满 10 条后进入下一批 10 条的去重窗口,用户调整窗口值后按新窗口执行。
- 过滤窗口最低 5 条、最高 100 条;超过 20 条时会提示用户弹幕可能明显变少,避免误以为直播间没人发弹幕。
- 普通模式保留过滤步长,默认 2,最低 1,减少高弹幕量场景下频繁裁剪窗口的开销。
- 重复弹幕指纹会纳入用户、消息文本、富文本片段、表情图片 URL 等内容,兼容 emoji、抖音表情、乱码样式文本和图片表情消息。
- TV 端弹幕设置新增重复过滤开关、过滤窗口、过滤步长和“刷屏严父”模式,和主 App 使用同一套核心过滤逻辑。
表情与弹幕显示
LiveMessage增加有序富文本片段,旧的imageUrls字段仍保留,TV 端继续兼容旧渲染路径。- 抖音消息会优先解析
rtfContent.piecesList,按平台返回顺序把文字、表情图片、兜底文本拼成一条消息。 - 抖音表情图片无法解析成 URL 时会保留文字占位,减少表情消息内容丢失。
- 抖音弹幕解析时不再把背景图、礼物图混成普通聊天表情。
- B 站和抖音消息里的图片字段可在 TV 播放器弹幕中显示。
NetImage和弹幕画布支持本地asset://表情资源,TV 端弹幕和图片显示都可以复用本地资源。- 弹幕覆盖层支持配置变化时尽量原地更新,减少切换设置、返回前台或窗口状态变化时弹幕像重新刷新的情况。
关注列表与同步
- TV 端关注列表改为分页加载,避免大量关注一次性渲染导致内存压力过大。
- 关注刷新加入冷却和任务互斥,避免连续刷新叠加大量网络任务。
- 关注列表展示时额外按关注 id 去重兜底,降低连续刷新后重复展示同一主播的概率。
- 大量关注导入、同步和刷新改为更谨慎的批量写入流程,减少数据库频繁写入造成的卡顿。
- 同步关注列表时避免日志打印完整大 JSON,减少日志体积和低性能设备上的卡顿风险。
- 主 App 侧 WebDAV 恢复、分页刷新、关注去重等底层修复和 TV 端共享的 core 逻辑保持同一轮更新口径。
抖音账号与搜索
- 抖音房间名 / 主播名搜索继续使用账号 Cookie 能力。
- TV 端不直接承载完整网页登录流程,建议通过手机端或桌面端配置后同步 Cookie。
- Cookie 侧兼容主 App 的完整 Cookie / 请求头解析逻辑;只填
ttwid通常不足以保证主播或房间搜索可用。 - 已用桌面浏览器登录后的抖音请求头 Cookie 验证
aweme/v1/web/live/search/,返回status_code: 0且有直播搜索数据。
兼容性说明
- 本 release 只包含 Android TV 安装包。
- 常见 Android TV / 电视盒子优先使用 arm64-v8a 包;老设备可尝试 armeabi-v7a;x86_64 主要面向模拟器或少数 x86 设备。
- 刷屏严父模式属于更强的弹幕压缩策略,适合不想看重复刷屏的用户;如果发现弹幕过少,可以调小窗口或切回普通重复过滤。
- 抖音表情资源目前优先补齐本地可确认资源;虎牙、斗鱼表情资源仍受平台公开资源限制,后续能稳定获取后再继续补。
参考与相关反馈
- 抖音平台表情资源参考:EmojiAll 抖音平台表情。
- TV 多屏同播 / 多开相关反馈:issue #30。
已验证
- TV App:
flutter analyze通过,No issues found。 - Core:
dart test test/live_repeated_danmu_summary_test.dart通过。 - TV Android ABI:
flutter build apk --release --split-per-abi通过。
下载说明
- 常见 Android TV 设备优先下载
SimpleLive-TV-tv_v1.7.6-arm64-v8a-fix-release.apk。 - 老设备可尝试
SimpleLive-TV-tv_v1.7.6-armeabi-v7a-fix-release.apk。 - x86_64 设备或模拟器下载
SimpleLive-TV-tv_v1.7.6-x86_64-fix-release.apk。
Simple Live v1.12.5
v1.12.5
这版把 v1.12.4 之后几轮已经完成的直播间、多开、弹幕、表情、关注页、同步和平台适配改动合并发布。重点是桌面端多开时可以收起右侧聊天区,重复弹幕过滤更适合高刷屏直播间,抖音表情显示更完整,iOS 返回手势和 Windows / Android 的播放体验也做了一轮修补。发布前建议先在设置里导出一份配置备份。
直播间与播放器
- 桌面端直播间非全屏状态新增右侧栏折叠功能,可收起右侧资料 / 聊天 / 标签页整栏,只保留窄展开按钮,让播放器占用更多窗口空间,方便多开时同时摆放更多直播间。
- 右侧栏折叠仅在 Windows / macOS / Linux 桌面端显示;移动端、全屏播放、小窗播放保持原有布局和操作习惯。
- 桌面端直播间横屏非全屏去掉内部顶栏,改为播放器左上角返回浮层和右侧栏右上角更多浮层,避免 Windows 顶部灰色空白带挤占播放区域。
- 桌面端直播间所有非全屏窗口都改用播放器浮层返回 / 更多按钮,窗口比例变化时也不再露出顶部灰带;对应 issue #43。
- iOS 直播间普通状态支持左侧边缘滑动返回(issue #39,感谢 @LakeWithOcean),并使用 Cupertino 风格路由转场;全屏状态仍保持返回时先退出全屏,避免误退出直播间。
- iOS 左滑返回只走系统边缘手势,不新增整页横向滑动,尽量避免和播放器手势、弹幕层、聊天区交互冲突。
- iOS 非全屏直播页统一使用明确 16:9 播放器尺寸的布局,规避 iPadOS 横屏 Row 布局下白屏但有声音的问题;对应 issue #41。
- 播放页标签和全屏长按快捷入口加入贡献榜 / 亲密榜,虎牙直播间会自动跳过该功能。
- Android / iOS 全屏长按快捷入口支持自定义启用项和顺序,默认关注列表、观看历史、同类推荐全部展示;只启用一个时长按直接打开,全部关闭时提示“没有东西可展示”。
- 主 App 新增“播放页设置”,播放页标签顺序从“主页设置”移入这里,入口位于“我的”页。
- 播放页“聊天 / SC 或头条 / 关注 / 设置”等标签支持自定义排序;不存在的页签不显示,存在的页签按保存顺序显示。
- 播放页右侧标签按语义 key 记忆当前页,从 B 站 / 虎牙这类有 SC / 头条标签的平台切到其他平台时,停留在“关注”标签不再跳走。
- B 站 SC / 虎牙头条支持按消失时间正序或倒序排序,播放器悬浮层和聊天区列表使用同一排序设置。
- 手动刷新直播间时同步刷新视频、弹幕、SC / 头条和贡献榜;全平台热度增加 10 秒详情刷新兜底。
- 播放页临时静音规则调整为:静音后上滑 / 下滑调节音量和点击静音按钮可解除;系统音量键变化不解除当前直播间静音,避免多开时误把已静音房间恢复声音。
- Android 非全屏播放页恢复竖屏布局,适配 realme 侧边栏双击全屏后再次双击退出的场景。
- PiP / 小窗进入和返回时不再主动清空弹幕层,减少从小窗回全屏时弹幕像重新刷新的问题。
- 播放页右上角更多菜单和底部弹窗统一加入安全区,避免 Android 虚拟导航栏遮挡底部菜单项。
弹幕过滤
- 重复弹幕过滤新增“刷屏严父”模式,忽略用户只按弹幕内容全局去重,主 App 全平台和 TV 端均生效。
- 切到“刷屏严父”会自动开启重复过滤、窗口重置为默认 10 条并隐藏过滤步长;窗口可在 5 到 100 条内调整,超过 20 条时提示弹幕可能明显变少。
- 普通重复过滤继续保留“同一用户在最近 N 条内发送相同内容只显示一次”的逻辑,默认窗口为 10。
- 重复弹幕过滤补充“过滤步长”,默认 2,最低 1;主 App 和 TV 端都可设置,减少高弹幕量场景下频繁裁剪窗口的开销。
- 重复弹幕过滤从列表线性扫描改为队列 + 计数表,查重为平均 O(1),窗口回收仍按用户设置的最近 N 条限制。
- 重复弹幕指纹会纳入用户、消息文本、富文本片段、表情图片 URL 等内容,兼容 emoji、抖音表情、乱码样式文本和图片表情消息。
- TV 端弹幕设置新增重复过滤开关、过滤窗口、过滤步长和“刷屏严父”模式。
表情与弹幕显示
- 完善抖音直播弹幕本地表情显示,内置 141 个抖音平台表情资源。
- 抖音弹幕表情改为按
rtfContent.piecesList富文本片段解析,聊天区按文字和图片顺序显示,不再只把图片追加到消息末尾。 - 抖音表情图片无法解析成 URL 时保留文字占位,减少表情消息内容丢失;不再把背景图、礼物图混成普通聊天表情。
LiveMessage增加有序富文本片段,旧的imageUrls仍保留,主 App 和 TV 端继续兼容旧渲染路径。- B 站和抖音消息里的图片字段可在主 App 聊天区、播放器浮层和 TV 播放器弹幕中显示。
- B 站弹幕表情按
[表情名]解析为富文本片段,聊天区和悬浮弹幕不再同时显示源码文本和表情图;抖音富文本表情沿用同一渲染优先级。 NetImage和弹幕画布支持本地asset://表情资源,主 App 和 TV 端都能复用。- 弹幕覆盖层在返回前台、窗口重新聚焦、全屏 / 小窗切换时不再主动重建,底层
canvas_danmaku支持配置变化时原地更新,尽量保持现有弹幕轨迹继续移动。
关注页、搜索与同步
- 删除关注页“读取中”分组,未知状态按未开播处理;关注页记住上次分组模式和选中分组,无有效记录时默认全部。
- 修复分页基类第一页刷新后可能被追加到旧列表的问题,避免 Android 关注页连续刷新后同一主播在 UI 中重复出现;关注页刷新改为服务加载后直接重排当前列表,并按关注 id 做展示去重兜底。
- 本轮基本重构了关注刷新、配置导入、配置备份和多种同步链路,会先自动评估配置复杂度,再选择不同处理策略。普通用户仍走更快的直接批量路径;关注、标签、历史或屏蔽词很多的用户会自动进入分批、合并、低并发和延迟刷新路径,优先保证界面不卡死、同步不中断、数据可恢复。
- 复杂度评估会综合关注数量、标签数量、历史记录数量、屏蔽词数量和配置包体积:300 条以内走普通快速路径;301 到 1000 条会批量写入并分批让出 UI;1001 到 3000 条会分段导入 / 同步并合并刷新通知;超过 3000 条进入超大列表模式,不在导入或同步结束瞬间立即全量刷新直播状态,避免前台被一次性网络请求拖死。
- 配置包导入、本地同步、SignalR 房间同步、WebDAV 恢复、文本 / 文件关注导入统一走批量导入 helper。导入时先解析为内存列表,按主键去重、跳过异常项、批量写入,再按数据规模决定是否让出 UI 线程和是否延迟刷新状态,减少几千条关注时逐条写库造成的卡顿。
- 历史记录导入和同步从逐条
get/put改为内存 Map 合并:先按房间 / 平台生成 key,对同一直播间只保留更新时间更新的一条,再一次性批量写入。这样能把大量重复历史记录压缩后再落库,减少 Hive 读写次数和对象分配。 - 标签、关注、历史、屏蔽词同步尽量复用同一套“解析 -> 去重 -> 合并 -> 批量写入 -> 汇总结果”的流程,导入结果会记录导入数、跳过数和耗时,避免一条坏数据导致整包失败。
- 本地同步和 SignalR 房间同步发送端会按数据规模自动分段。小配置仍直接发送;大配置会拆成多个旧协议兼容的数据段,第一段带覆盖标记,后续段走合并写入,旧端仍能按原接口接收,新端则能避免一次性发送超大 JSON 卡住。
- 关注直播状态刷新并发改为后台自动判断,用户不可手动配置:200 条内 32 并发,201 到 800 条 20 并发,801 到 2000 条 12 并发,超过 2000 条降到 8 并发;刷新时保留平台交错,避免同一平台请求瞬间堆积。
- 刷新任务增加互斥和冷却:如果上一轮关注状态刷新还没结束,新刷新不会再叠一轮;导入或同步刚完成时,大列表会延后状态刷新,让 UI 先恢复可操作。
- WebDAV 恢复改为先把云端
backup.zip下载到临时文件再读取,避免直接read()失败;恢复过程复用批量导入 helper,并取消捕获控制器对象的 isolate 解压,修复RemoteSyncWebDAVController/DAVClient无法跨 isolate 发送导致的恢复失败。 - WebDAV 备份不再把完整配置包和旧格式文件重复写入临时目录,改为用同一份 profile map 在内存中生成兼容 zip,减少磁盘临时文件、重复序列化和大配置包的峰值内存。
- 同步和备份日志不再打印完整大 JSON,只记录关注 / 标签 / 历史 / 屏蔽词条数、payload 字节数、耗时、导入数和跳过数,降低日志体积,也避免日志系统本身拖慢大配置同步。
- 搜索页默认平台记忆改为按平台
siteId保存,避免配置同步或平台排序变化后选错平台;从首页当前平台进入搜索时默认选中该平台,并保留上一次搜索页停留的平台。 - 抖音分类缺少远程图时使用本地自绘 icon。
抖音账号与 Cookie
- 抖音房间名 / 主播名搜索继续接入账号 Cookie;TV 端可通过手机或电脑端同步 Cookie。
- 移动端抖音账号移除打开 App 登录入口,只保留 Cookie 粘贴和文件导入,避免误以为 App 登录后就能直接获取完整网页登录 Cookie。
- 抖音 Cookie 登录框兼容纯 Cookie、
Cookie: xxx和整段请求头粘贴;如果浏览器复制出来是两列格式里的cookie+ 下一行值,App 会自动提取下一行的完整 Cookie。 - 抖音账号页 Cookie 摘要修复
Obx未订阅响应式变量导致的灰色错误占位;保存、清除 Cookie 后会立即刷新状态。 - 抖音 Cookie 摘要和配置弹窗会尝试从完整 Cookie 的
sid_guard解析预计剩余有效期,并每分钟刷新倒计时;仅ttwid或无法解析时明确提示有效期无法判断。 - 已用桌面浏览器登录后的抖音请求头 Cookie 验证
aweme/v1/web/live/search/,返回status_code: 0且有直播搜索数据;只填ttwid不足以保证主播 / 房间搜索可用。 - 抖音房间详情、a_bogus、Web Cookie、HTML 解析、画质读取、播放器打开和 websocket 解码补充耗时日志;抖音 Web Cookie 增加短缓存,热门直播间高频弹幕改为批量投递。
桌面与系统适配
- 桌面端新增“记住窗口大小和位置”选项,默认关闭。
- Windows 从最大化窗口双击进入全屏时,先恢复成普通居中窗口,再进入全屏;全屏完成后再次应用无边框、无阴影、隐藏标题栏,并在短延迟后补一次,避免窗口边框短暂重新出现导致边缘错位。
- Windows 桌面窗口显示改到首帧后执行,并增加 show / focus 兜底日志,用于继续排查 issue #37 里只有进程或白屏的问题。
- Windows 直播间加载不再使用全局 SmartDialog loading 遮罩,避免直播内容已加载但整窗仍被灰白遮罩覆盖的问题;本次 Windows
fix包已包含该修复。 - Windows 关闭时先释放播放器、同步服务和日志资源,再销毁窗口,降低关闭弹窗概率。
- iOS / macOS 平台配置同步当前功能面,补充局域网同步、扫码、截图保存和 HTTP 播放 / WebDAV 所需的权限说明。
实时字幕
- 实时字幕入口暂时下线;设置页、直播间更多菜单、播放页字幕浮层、模型推荐和样式设置不再对外展示,并在启动时强制关闭历史开关,避免 ASR 初始化卡死或反复闪退。
- 实时字幕模型路径选择逻辑已改为优先选择模型文件夹,适配一个模型由多个文件组成的情况;相关代码暂保留,后续重新评估 ASR 内存和稳定性后再开放。
- README 中保留并补充字幕模型下载说明,包括高级 / 中级 / 甜点级三个档位需要下载哪些文件、哪些文件不需要下载,以及“选一个档位,把该档位所有文件放同一个文件夹,再在 App 里选择这个文件夹”的使用方式。
Windows 白屏排查记录
- 排查 issue #37:用户反馈 1.12.4 Windows zip 在 Win11 25H2 打开白屏,1.12.3 可正常打开。
- 对比 1.12.3 与 1.12.4 源码变更,未发现 Windows runner /
main.dart启动链路变更;差异主要集中在直播间、同步、弹幕、抖音账号等业务代码。 - 对比两个 Windows release zip,1.12.4 额外包含
dartjni.dll、onnxruntime.dll、sherpa-onnx-c-api.dll,且 release 包构建链与 1.12.3 不同,问题更像 Windows 发布包 / 构建链或运行时依赖差异,需要后续用 Windows 实机包继续验证。
鸣谢
- 抖音平台表情资源参考:EmojiAll 抖音平台表情。
- 感谢 @a8804818 在 issue #13 提出桌面端多开需求方向。
- 感谢 @eason27 在 issue #30 提出 TV 多屏同播 / 多开相关需求。
- 感谢一位微信用户赞助支持并协助排查抖音 Cookie 登录问题;未确认可公开 GitHub ID 前这里先匿名致谢。
已验证
- 主 App:
flutter analyze通过,No issues found。 - TV App:
flutter analyze通过,No issues found。 - Core:
dart test test/live_repeated_danmu_summary_test.dart通过。 - 主 App Android:
flutter build apk --release通过。 - 主 App Android ABI:
flutter build apk --release --split-per-abi通过。 - 主 App Windows:
flutter build windows --release通过。 - 主 App Linux:WSL Ubuntu 22.04 + Flutter 3.38.10 构建通过;该本地 Linux 包更适合本机 / Ubuntu 22.04 冒烟,面向 Ubuntu 24.04 的正式 Linux 包建议仍走 GitHub Actions 或 Ubuntu 24.04 环境。
- macOS:GitHub Actions
app-build-macos-manual通过并上传 dmg / zip。 - iOS:GitHub Actions
app-build-ios-manual通过并上传未签名 IPA。 - Windows 最大化后双击进入全屏已复测通过;边缘不再出现窗口框和错位。
下载说明
- Android 通用包:
simple_live_app-1.12.5+11205-android-fix.apk。 - Android 分 ABI 包:
SimpleLive-v1.12.5-arm64-v8a-fix-release.apk、SimpleLive-v1.12.5-armeabi-v7a-fix-release.apk、SimpleLive-v1.12.5-x86_64-fix-release.apk。不确定架构时可下载通用包。 - Windows:
simple_live_app-1.12.5+11205-windows-fix.zip。 - macOS:
simple_live_app-1.12.5+11205-macos-fix.dmg或simple_live_app-1.12.5+11205-macos-fix.zip,首次打开如遇系统拦截,按 macOS 安全设置放行。 - iOS:
ios_no_sign-fix.ipa,未签名,需要自行签名或使用自有安装方式。 - Linux:
SimpleLive-linux-x64-v1.12.5-fix.zip或SimpleLive-linux-amd64-v1.12.5-fix.deb;本地 deb / zip 由 WSL Ubuntu 22.04 构建,Ubuntu 24.04 用户如遇依赖差异可优先等待后续 24.04 环境包。
Simple Live v1.12.4
v1.12.4 / tv_1.7.5 发布重点
update:关注页支持按开播状态或平台分组,特别关注星标持久化并在全部列表和所属分组置顶。update:特别关注支持移动端开播提醒;桌面端和 TV 端暂不做通知。fix:主 App / TV App 版本号、更新 JSON 和本地 release tag 统一到v1.12.4/tv_1.7.5。fix:WebDAV 和局域网同步恢复失败时不再一直转圈,连接失败会收起 loading 并给出明确原因。update:抖音房间名 / 主播名搜索接入账号 Cookie;TV 端通过手机或电脑端同步 Cookie。update:播放器新增当前房间临时静音、房间内一次性定时关闭、Android 退后台自动小窗开关。fix:手动刷新直播间时同步刷新视频、弹幕、SC/头条和贡献榜;全平台热度增加 10 秒详情刷新兜底。fix:虎牙头条 pid 候选和日志增强,SC/头条按结束时间排序。fix:修复播放器浮层多条 SC 倒计时卡 1 秒不消失的问题。update:弹幕表情支持 B 站和抖音消息里的图片字段,主 App 聊天区、播放器浮层和 TV 播放器弹幕均可显示。update:实时字幕设置补到直播间设置和右上角更多菜单,并提供高级 / 中级 / 甜点级模型推荐入口。fix:其他设置里的同步服务地址在窄屏上改为短标签显示,完整地址保留在说明和编辑弹窗中。
Android TV tv_1.7.5
v1.12.4 / tv_1.7.5 发布重点
update:关注页支持按开播状态或平台分组,特别关注星标持久化并在全部列表和所属分组置顶。update:特别关注支持移动端开播提醒;桌面端和 TV 端暂不做通知。fix:主 App / TV App 版本号、更新 JSON 和本地 release tag 统一到v1.12.4/tv_1.7.5。fix:WebDAV 和局域网同步恢复失败时不再一直转圈,连接失败会收起 loading 并给出明确原因。update:抖音房间名 / 主播名搜索接入账号 Cookie;TV 端通过手机或电脑端同步 Cookie。update:播放器新增当前房间临时静音、房间内一次性定时关闭、Android 退后台自动小窗开关。fix:手动刷新直播间时同步刷新视频、弹幕、SC/头条和贡献榜;全平台热度增加 10 秒详情刷新兜底。fix:虎牙头条 pid 候选和日志增强,SC/头条按结束时间排序。fix:修复播放器浮层多条 SC 倒计时卡 1 秒不消失的问题。update:弹幕表情支持 B 站和抖音消息里的图片字段,主 App 聊天区、播放器浮层和 TV 播放器弹幕均可显示。update:实时字幕设置补到直播间设置和右上角更多菜单,并提供高级 / 中级 / 甜点级模型推荐入口。fix:其他设置里的同步服务地址在窄屏上改为短标签显示,完整地址保留在说明和编辑弹窗中。
Simple Live v1.12.3
这版主要是把同步功能救回来,也顺手把最近 issue 里几个比较影响使用的问题一起收掉。这里也记一下:这轮 Windows、Android、TV 的同步测试来回折腾了不少,创建房间、加入房间、同步数据都是本地实际测过才发的。
远程同步换成自建服务
- 远程同步不再使用原作者的
sync1.nsapps.cn,默认改为新的自建 Cloudflare Workers + Durable Objects WebSocket 服务。 - 仍然是原来的临时房间体验:创建房间、扫码或输入房间号、同步关注/历史/屏蔽词/B 站账号。
- 房间仍是临时中转,不落库,不保存你的关注、历史、Cookie、屏蔽词内容;房间 600 秒过期,创建者断开后房间销毁。
- 本轮 Windows 本地测试确认:开代理后可以创建房间、加入房间,同步功能可用。
关于 workers.dev 和代理
- 默认同步地址是
wss://simple-live-sync.3439394104.workers.dev/sync。 - 部分网络可能无法直连
workers.dev,表现为一直连接中、创建房间超时或加入失败。这不是房间逻辑坏了,而是网络没连到 Worker。 - Windows/macOS/Linux 桌面端现在会自动检测本机
127.0.0.1:51888,检测到后同步 WebSocket 会走这个 HTTP 代理。 - 如果你的代理端口不是 51888,请到
其他设置 -> 同步代理地址手动填写,例如127.0.0.1:7890或http://127.0.0.1:7890。 - 代理端口请在自己的代理软件里查看,常见名字是
HTTP Port、Mixed Port或“本地 HTTP 代理端口”。如果要强制直连,可以填写direct。 - 之后更推荐绑定自定义域名,减少
workers.dev在部分网络下不可达的问题。
配置同步和旧配置导入
- 新版配置包会导出设置、关注、标签、历史、弹幕屏蔽词和屏蔽词预设。
- Cookie、WebDAV 密码等敏感信息默认不写进配置包。
- 兼容旧版
simple_live_config.json,这类文件通常只包含设置和弹幕屏蔽词,不一定包含关注列表。 - 兼容旧 WebDAV/同步备份里的关注、标签、历史单文件格式,例如
{ "data": [...] }。 - 导入关注、标签、历史时会跳过异常项,不再因为一条坏数据导致整包失败。
- 如果旧备份还是导入不了,可以带备份文件和报错信息联系作者,我会帮忙转换格式或继续补兼容。
本轮其他修复
- Android 后台播放做了前台服务保活,降低切后台一段时间后断声音的问题。
- Android 打开其他应用小窗/覆盖层时,弹幕不会再被误清空;用户本地已确认这个问题修好。
- Windows 多开不再白屏;后开的实例使用数据快照,避免多个窗口抢同一份 Hive 数据。本地已确认多开可用。
- macOS 也同步调整了多开初始化路径,但本轮没有 macOS 本机包。
- 远程同步页修复房间号未创建完成时二维码/复制按钮提前可用的问题。
- 远程同步失败提示更明确,会提示网络、服务地址或 workers.dev 不可达。
- 开源主页改为当前仓库地址。
- 关于页版本号使用安装包真实版本。
- 弹幕字体上限提高到 72,并继续按视口收紧可见行数,避免大字体挤爆画面。
- TV 局域网同步自检页不再错误显示成
SimpeLive android。
本地构建环境
- Android / Windows / Android TV:Microsoft Windows 10 Pro for Workstations 10.0.26200 x64,Flutter 3.41.9 / Dart 3.11.5,JDK 17.0.18。
- Linux:WSL Ubuntu 22.04.5 LTS,Flutter 3.38.10 / Dart 3.10.9。
- 本轮没有使用 GitHub Actions 构建;macOS/iOS 暂未构建。
