VictorTran1023 / tcl-tv-adb-proxy
git clone https://github.com/VictorTran1023/tcl-tv-adb-proxy.git
TCL 电视调试与优化手册:ADB 授权 · 侧载 · 代理 · 去广告 · 低负载 · HUD · 回归测试
+74
stars, 24h · #124
+74
stars, 7 days · #679
+74
stars, 30 days · #3,039
74
★ total · +74% this week
9
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageJava
LicenseMIT
Created2026-10-19 (1d ago)
Last push1d ago
Watchers0
OwnerUser
GitHub topics
Links
README excerpt
# TCL 电视调试与优化手册 ADB 授权 · 侧载 · 代理 · 去广告 · 低负载 · HUD · 回归测试 中文 · English · Discussions --- ## 适合什么人 - 使用 **国行 TCL / 雷鸟 等安卓电视**,系统受限、无法安装第三方应用 - 卡在 `adb unauthorized`,且电视端**始终不弹授权框** - 希望在不 root、不刷机的前提下侧载应用、配置代理、稳定播放 - 首页广告多、待机发热耗电,想做**可回滚的减法** - 想在不换桌面的前提下,看到 VPN / CPU / 温度等**系统状态** - 需要一套**可复现的排查路径**,而不是零散的命令片段 ## 不适用 | 场景 | 说明 | | --- | --- | | root / 改系统分区 / 刷机 | 本仓库不涉及 | | 现成的节点、账号、订阅 | 全部需要自备 | | 非 Android TV 系统 | webOS、Tizen、Roku 等不适用 | ## 适用范围 | 项目 | 说明 | | --- | --- | | 系统 | Android TV 9 及以上 | | 架构 | 32 位(`armeabi-v7a`)或 64 位均可,需先确认 | | 设备 | 以国行 TCL / 雷鸟为例,方法适用于多数国行 Android TV | | 前提 | 设备与电脑处于同一局域网 | 四类典型问题与成因: | 现象 | 成因 | | --- | --- | | 连不上 | 公钥编码与厂商 adbd 不兼容 | | 装不上 | 厂商定制 PMS 拦截非交互安装 | | 点不动 | 应用 UI 未适配遥控器 | | 播不动 | 码率超出可用带宽 | ## 快速开始 [code] ## 目录 | # | 章节 | 内容 | | --- | --- | --- | | 1 | 环境侦测 | ABI、内核位数、解码能力 | | 2 | 局域网发现 | ARP 扫描、SSDP、mDNS | | 3 | 开启 ADB | 厂商入口路径 | | 4 | 授权突破 | 传统公钥握手 | | 5 | 侧载安装 | 绕过安装校验 | | 6 | 代理客户端 | FlClash 与订阅导入 | | 7 | YouTube | 无 GMS 环境下的方案 | | 8 | 播放调优 | 解码能力与卡顿定位 | | 9 | 故障速查 | 典型故障对照 | | 10 | 脚本 | 四个 CLI 工具 + 三个 PowerShell 脚本 | | 11 | 系统优化 | 去广告、降负载、闸门式执行 | | 12 | 状态 HUD | 不换桌面的状态条与屏保 | | 13 | 回归测试 | 15 项自动检查 | --- ## 1. 环境侦测 [code] | 检查项 | 判定依据 | | --- | --- | | `abilist64` 为空 | 纯 32 位系统,仅能安装 `armeabi-v7a` 包 | | `zygote32` | 32 位进程模型 | | `uname -m` 为 `armv8l` | 内核运行于 AArch32 | 只含 `arm64-v8a` 的 APK 会报 `INSTALL_FAILED_NO_MATCHING_ABIS`。 --- ## 2. 局域网发现 ICMP 常被防火墙丢弃,改用 TCP 触发 ARP: [code] SSDP 可直接取到设备型号: [code] 电视端 UPnP 描述中的标识: [code] `_airplay._tcp.local` 的 TXT 记录含 `model=AppleTV3,2` 表示支持 AirPlay 2,可从 iPhone / Mac 直接投屏。 --- ## 3. 开启 ADB 各厂商入口不同,常见两类: | 方式 | 路径 | | --- | --- | | 隐藏开关 | 设置 → 关于本机 → 本机信息 → 遥控器按 上 下 左 右 | | 开发者模式 | 设置 → 关于 → 连续点击版本号 | 国行固件的开发者选项可能只有 ADB 一项,无 USB 调试、无授权列表。 > ADB 开关通常在断电后复位,需要重新开启。 [code] --- ## 4. 授权突破 **现象** [code] 电视端不显示授权弹窗。 **定位** 开启 adb 服务端追踪后可见: [code] adb 34+ 发送 base64 编码的新格式公钥;部分厂商 adbd 仅解析传统二进制结构,解析失败即拒绝, 不进入弹窗流程。 **解法** [code] 脚本发送以下结构并保持连接,等待设备端确认: [code] 授权后公钥写入 `adb_keys`,后续普通 adb 可直接连接。 > adb 私钥必须位于 `~/.android/adbkey`。该路径不可写时 adb 无法签名,同样报此错误。 --- ## 5. 侧载安装 **现象** [code] 调整全局校验开关通常无效: [code] **定位** [code] 校验逻辑位于 system_server,由厂商定制 PackageManagerService 注入。非交互安装没有 UI 可供用户确认,只能返回失败。 **解法** 选择一条带界面的安装通道: [code] 也可使用任意具备安装界面的应用市场或文件管理器,由前台应用发起安装,系统弹出确认框。 --- ## 6. 代理客户端 FlClash 是基于 mihomo 内核的开源客户端, 支持 VLESS / VMess / Trojan / Hysteria2 等协议,在 Android TV 上可用遥控器直接操作。 | 项目 | 说明 | | --- | --- | | 项目地址 | https://github.com/chen08209/FlClash | | 内核 | mihomo(Clash Meta) | | 界面 | 平板式侧栏 + 卡片列表,D-pad 可聚焦 | | 订阅 | 支持链接导入与自动更新 | | 授权 | 开源 | **下载** 前往 Releases 选择与设备 ABI 对应的构建: | ABI | 文件 | | --- | --- | | 32 位 | `FlClash-*-android-armeabi-v7a.apk` | | 64 位 | `FlClash-*-android-arm64-v8a.apk` | | 仪表盘 | 代理页 | | --- | --- | | | | | 运行状态 · 出站模式 · 服务健康度 | 策略组 · 节点延迟 | **订阅导入** 电视输入法常将 URL 联想为中文,键盘输入不可行。使用深链直接推送: [code] 链接按原样存储,可保留订阅自动更新能力;文件导入则会失去更新。 **节点选择** 代理 → 策略组 → 选择节点。部分订阅默认指向 `security=none` 的明文节点,当前内核会拒绝连接。 --- ## 7. YouTube 官方客户端依赖 Google Play Ser