📈 GH Trending Explorer 🎲 Surprise me

← all repos

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