pengchujin/aerial-tv

★ 7,618⑂ 635

给国产电视的一块干净桌面:参照 tvOS 设计的开源 Android TV 桌面,没有广告,开机自动接管。A tvOS-style launcher for Xiaomi, TCL and other China-market TVs.

About pengchujin/aerial-tv

pengchujin/aerial-tv is an open-source project on GitHub, mainly written in Kotlin. 给国产电视的一块干净桌面:参照 tvOS 设计的开源 Android TV 桌面,没有广告,开机自动接管。A tvOS-style launcher for Xiaomi, TCL and other China-market TVs. It currently holds 7,618 stars and 635 forks with 0 open issues, and was last pushed on an unknown date (repository created unknown).

Project Overview

Git Homed tracks it on the Today's Trending board.

GitHub Repository Details

Repository pengchujin/aerial-tv · default branch - · size 0 KB · watchers 0 · source: GitHub REST API and repository README

README

https://github.com/pengchujin/aerial-tv/blob/HEAD/Aerial 图标

Aerial

给国产电视的一块干净桌面。

参照 Apple TV 做的 Android TV 桌面:没有广告,没有推荐流,只有你的 App、壁纸和航拍屏保。
适合小米、TCL、创维、索尼等国产电视,也能装在盒子和投影仪上。开机自动进入,待机也不会被清理。

中文 · English

https://github.com/pengchujin/aerial-tv/blob/HEAD/官网 https://github.com/pengchujin/aerial-tv/blob/HEAD/下载 APK https://github.com/pengchujin/aerial-tv/blob/HEAD/安装

https://github.com/pengchujin/aerial-tv/blob/HEAD/版本 https://github.com/pengchujin/aerial-tv/blob/HEAD/许可证 MIT https://github.com/pengchujin/aerial-tv/blob/HEAD/Android TV 5.0+ https://github.com/pengchujin/aerial-tv/blob/HEAD/Lite 4.0–4.4 测试版

Aerial 首页

| 电视自带的桌面 | 换上 Aerial 之后 | |:---:|:---:| | https://github.com/pengchujin/aerial-tv/blob/HEAD/电视自带的桌面:满屏剧集推荐、会员和限免角标 | https://github.com/pengchujin/aerial-tv/blob/HEAD/Aerial 首页 |

功能

https://github.com/pengchujin/aerial-tv/blob/HEAD/第一排的玻璃底板 https://github.com/pengchujin/aerial-tv/blob/HEAD/往下滚动后的应用网格,中间有一个文件夹

https://github.com/pengchujin/aerial-tv/blob/HEAD/打开的文件夹 https://github.com/pengchujin/aerial-tv/blob/HEAD/控制中心

https://github.com/pengchujin/aerial-tv/blob/HEAD/航拍屏保 https://github.com/pengchujin/aerial-tv/blob/HEAD/个性化:每排 App 选 6 个

安装

不用 root,不动系统应用,随时能还原。电脑和电视连同一个网络。

1. 打开电视的 ADB 调试

| 电视 | 怎么打开 | |---|---| | 小米 / Redmi | 设置 → 关于 → 连续按「产品型号/产品类型」进入开发者模式,再到 设置 → 账号与安全,打开「ADB 调试」和「安装未知来源的应用」 | | TCL / 雷鸟 | 设置 → 关于 → 本机信息,快速按遥控器「上下左右」,在底部的「更多」里打开 ADB | | 海尔 / 模卡 | 按电视机身上的信号源键,再用遥控器按「左左上右」,在工厂菜单里打开「ADB 调试开关」,别动其他选项 | | OPPO(含 S1) | 设置 → 系统 → 关于本机 → 设备型号,按「上上右右」再按确认;再到 设置 → 系统 → 开发者选项,打开「USB 调试」。IP 在 设置 → 网络 → 已连接的网络 最下面 | | 其他 Android TV | 设置 → 设备偏好设置 → 关于 → 连按「内部版本号」7 次,再在开发者选项里打开「USB 调试」 |

电视的 IP 在「设置 → 网络 → 已连接的网络」里。第一次连接时,有 USB 调试开关的电视会问是否允许调试,选「始终允许」;只有无线调试的电视不弹这个窗,见下一段。

只有无线调试、没有 USB 调试 / 网络调试(ADB 调试)开关的 Android 11+ 电视,第一次要先配对(例如索尼 BRAVIA 的 Android 14,#747):这类电视不提供旧的明文端口,不能直接 adb connect :5555。在电视上打开 设置 → 系统 → 开发者选项 → 无线调试 → 使用配对码配对设备,把配对码屏幕上的 IP:端口和 6 位配对码输入电脑:

adb pair 192.168.1.20:37115   # 电视配对码屏幕上的端口(示例,以电视显示为准)

提示 Enter pairing code 时输入电视上的 6 位配对码

adb connect 192.168.1.20:39201 # 无线调试主页面上的另一组 IP:端口(示例)

连上后照常安装。想让以后直接用 <电视IP>:5555,连上时再运行一次 adb tcpip 5555;配过对的电脑不用再配对。install.sh 和安装说明里的 Agent 会引导这一步。部分 TCL 固件(Q10M、Q10L、鹤 6 Ultra 等)没有配对码入口,只能先按下面的分品牌说明用数据线连电脑授权。

更细的分品牌说明(包括打不开 ADB 的机型)见 docs/devices/adb-by-brand.md。

2. 安装

让 Agent 装(推荐):把下面这段发给能在电脑上运行命令的 Agent(WorkBuddy、豆包电脑版、千问电脑版、Trae、Claude Code、Codex 等):

请帮我把开源电视桌面 Aerial 装到我的电视上,并设为开机进入的桌面。
电视 IP:<电视IP>
保持 ADB 常开:要

安装说明在这里:https://aerial.qust.me/agent.md (打不开时用 https://raw.githubusercontent.com/pengchujin/aerial-tv/main/site/agent.md )

请先完整读完安装说明再动手,然后在我的电脑上亲自运行命令,不要只把步骤告诉我。需要我在电视上操作时提醒我。 最后按说明里的「验收」,把这几条命令的原始输出原样贴给我:

  • adb shell "cmd package resolve-activity --brief -a android.intent.action.MAIN -c android.intent.category.HOME"
  • adb shell settings get secure enabled_accessibility_services
  • 按主页键后的 adb shell "dumpsys window | grep mCurrentFocus"

手机上的豆包、网页版聊天只会把步骤告诉你,不会执行;要用能跑命令的电脑版 / 工作版(豆包电脑版或豆包工作版、WorkBuddy、千问电脑版、Trae、Claude Code、Codex 等)。Agent 说装好了,看它贴出的 mCurrentFocus 输出里有没有 app.orchard.tv。

没有电脑:有用户用手机上的甲壳虫 ADB 助手、超级小爱装成功过,本仓库没有逐一实测。步骤和上面的 Windows 步骤一样,装好后建议再用电脑跑一遍验收。

一行命令(macOS / Linux):

curl -fsSL https://aerial.qust.me/install.sh | KEEP_ADB=1 TV=192.168.1.20 bash

只有无线调试的电视(见第 1 步)先 export ADB_PAIR=<配对屏 IP:端口> ADB_CODE=<6 位配对码> ADB_CONNECT=<无线调试主页 IP:端口>,再跑上面的命令;没有配对码入口的(TCL Q10M、Q10L、鹤 6 Ultra 等)先按分品牌说明用数据线连一次、运行 adb tcpip 5555,之后照常跑上面的命令。

手动:下载 aerial-standard.apk。只有无线调试的电视(见第 1 步)按下面两种情况之一先处理好,再运行命令:

adb connect 192.168.1.20:5555
adb install -r aerial-standard.apk
adb shell pm grant app.orchard.tv android.permission.WRITE_SECURE_SETTINGS
adb shell cmd notification allow_listener app.orchard.tv/app.orchard.tv.guard.RevivalListener
adb shell appops set app.orchard.tv SYSTEM_ALERT_WINDOW allow
adb shell am start -n app.orchard.tv/.MainActivity

Windows 用 Agent 装,或照安装说明里的 Windows 步骤。

U 盘(不用电脑):下载 APK 拷进 U 盘,用电视的文件管理器打开安装。

| 下载 | 用在 | |---|---| | aerial-standard.apk | Android 5.0 及以上,先装这个 | | aerial-guard.apk | standard 装不上、提示不允许安装桌面类 App 时 | | aerial-lite.apk | Android 4.0–4.4(见下面的 Aerial Lite) |

装好后按主页键:系统问「使用哪个应用」时选 Aerial、再选「始终」就设好了(原生 Android TV 一般是这样)。直接回到原桌面、不问(国产电视大多这样)时,从「我的应用」打开 Aerial,它会弹出「设为主屏幕」,按里面的入口去电视设置里打开桌面守护(无障碍)和通知使用权;电视设置里没有这些入口时,Aerial 只能当普通 App 用,要接管主页键还得用上面的命令或 Agent 设置一次(覆盖安装,不丢设置)。

升级:1.32 起,有新版本时控制中心会出现「有新版本」,点进去选「下载并安装」,在电视自己的安装界面确认(小米、TCL 上验证过),装完回到 Aerial,设置都保留。电视不让 App 安装应用时,升级就是再运行一次安装命令:升级页上有二维码,手机扫码能直接复制这台电视的命令,或者交给 Agent。1.31 及以前没有这个按钮,这一次还是要再运行一次安装命令。

Android 4.0–4.4 老电视:Aerial Lite(测试版)

Android 4.0–4.4 的老电视、老盒子装不了完整版(界面框架最低要 Android 5.0),所以有一个单独的 Aerial Lite:包名 app.orchard.tv.lite,外观和完整版一样。

Lite 现在是第一版(1.0),属于测试版。 只在 Android 4.0.4 / 4.4.4 虚拟机,以及小米、TCL 的新电视上测过,还没在真实的 4.x 电视上用过,可能有不少小问题。只适配 Android 4.0–4.4;Android 5.0 及以上请用上面的完整版。遇到问题请用机型适配模板反馈,标题写上 Lite。

一行命令(macOS / Linux):和完整版是同一条命令,脚本发现电视是 Android 4.x 会自动装 Lite;也可以明确指定:

curl -fsSL https://aerial.qust.me/install.sh | TV=192.168.1.20 bash -s lite

手动:下载 aerial-lite.apk,然后:

adb connect 192.168.1.20:5555
adb install -r aerial-lite.apk
adb shell pm grant app.orchard.tv.lite android.permission.WRITE_SECURE_SETTINGS   # 调亮度用;Android 4.0 会报错,可以忽略
adb shell am start -n app.orchard.tv.lite/.HomeActivity

U 盘:把 aerial-lite.apk 拷进 U 盘,用电视的文件管理器打开安装。

装好以后:按遥控器的主页键,系统问「使用哪个应用」时选 Aerial Lite,再选「始终」。不弹出选择、直接回到原桌面,说明固件把主页键锁在了自家桌面,这时只能从应用列表打开 Lite。

和完整版的区别:没有桌面守护(无障碍接管),开机和主页键全靠系统的默认桌面;没有航拍壁纸、「我的视频」壁纸、信号源磁贴(4.x 没有电视输入框架,信号源按钮打开电视自己的信号源面板)、应用内升级(升级就是再装一次,设置保留)。航拍屏保、照片和每日一图、时钟、文件夹、长按菜单、控制中心、个性化、手机配置页都有。详细说明见 docs/LITE.md。

还原:电视上 设置 → 应用 → Aerial Lite → 清除默认设置,再按主页键选原来的桌面;或者直接卸载:adb uninstall app.orchard.tv.lite(一行命令的 bash -s restore --uninstall 也会卸载它)。

还原

curl -fsSL https://aerial.qust.me/install.sh | TV=192.168.1.20 bash -s restore

最后加 --uninstall(bash -s restore --uninstall)会顺便卸载 Aerial。不能运行 bash(Windows)时,逐条的 adb 命令见安装说明的「还原」。

想交给 AI 还原,把这段直接发过去(要能在电脑上运行命令):

请按 https://aerial.qust.me/agent.md 里「还原」一节的步骤,把我电视(IP:<电视IP>)的桌面还原成原来的,Aerial 先不卸载。
请在我的电脑上亲自运行命令,最后把 settings get secure enabled_accessibility_services 和按主页键后的 dumpsys window | grep mCurrentFocus 原始输出贴给我。

常见问题

它怎么接管桌面

国产电视大多只认自家桌面,待机时还会清理第三方 App。所以 Aerial 用一个无障碍服务,原桌面一出现就切回来(只看哪个窗口在前台,不读屏幕内容);被清理后再靠通知监听让系统把它拉起来(不读通知)。老小米(Android 6)的桌面不报告窗口变化,守护改看系统的用量统计;有些酷开、创维固件不按标准方式启动桌面,守护也认得它们自己的桌面。原生 Android TV 上不需要这些,直接设成默认桌面就行。

支持的机型

✅ 能用 ⚠️ 能用,有限制 ❌ 暂时接管不了。大多来自用户反馈,带「笔记」的有详细记录。

| 品牌 | 机型 | 系统 | 情况 | |---|---|---|---| | 小米 / Redmi | MiTV-MFTR0(Redmi X65 2026)、MFFU0、MTSU0(S65 Mini LED 2026 至尊版) | Android 14 | ✅ 日常使用(MFTR0、MFFU0、MTSU0) | | 小米 | MiTV-ASTP0、ASTP1、NSOP0、MFTP0 | Android 9 | ✅ MFTP0 被系统清理后约 30–60 秒才回来(笔记) | | 小米 | 小米电视 4 / 4A / 4X / 3S、小米盒子 4 | Android 6 | ✅ 1.43 起;按主页键后几秒才回到 Aerial(笔记) | | 小米 | 小米电视 2(MiTV2-49) | Android 4.3 | ❌ Aerial Lite 能装能跑,但主页键由系统直接打开小米桌面,当不了桌面(#770) | | 华为 | M330 盒子 | Android 4.4 | ❌ Aerial Lite 能装,但固件每次开机把默认桌面改回华为桌面(#850) | | 小米(峰米) | Ultraman 系列投影仪 | Android 9 | ✅(笔记) | | TCL | MT5879 国行、98T8H | Android 11 | ✅ 日常使用(笔记;98T8H 见 #803) | | TCL | Q9L Pro | Android 14 | ⚠️ 只能 USB 线连 adb;要在电视管家里允许 Aerial 自启;信号源切了没画面(#792) | | 雷鸟 | 75S78A Plus(FFALCON T966D5) | Android 14 | ❌ 固件约每分钟清掉无障碍,主页键接管不了;boot_app_componentname 能让开机进 Aerial(笔记) | | TCL | 75V2(m7221) | Android 8 | ✅ 免 root,开机直达(笔记) | | TCL / 雷鸟 | 60A730U、55V2 Pro(x32a0)、65Q10E 与鹤 6(m7642)、75S365C、75Q10L | Android 5.1–14 | ✅ 60A730U 只能装 guard 版;55V2 Pro 先 setprop persist.tcl.debug.installapk 1 才能 adb 安装(#620) | | 雷鸟 | 55S595C Ultra、鹤 6 2025 Ultra | Android 11+ | ❌ 能装,接管不了主页键(笔记) | | 索尼 | A80J 国行、BRAVIA VH1 | Android 10 / 12 | ✅ | | 索尼 | KD55X7000D 国行 | Android 8 | ✅ 亮度要在电视设置里调(#757) | | 创维 / 酷开 | K3 Pro、75A7D | Android 11 | ✅ 75A7D 的信号源 1.45 起能用 | | 创维 / 酷开 | 65G60、8R134 / 8R145、aigc 系(C10 投影、P60、7T863) | Android 8–11 | ⚠️ 开机先进酷开桌面,或被系统清理后要等 20–30 秒(笔记) | | 创维 / 酷开 | 5S21(50K2、7626K2)、5S05(60U2)、8H66 H7 | Android 5.x | ⚠️ 开机和待机后是 Aerial,主页键回不到 Aerial;信号源列不出来 | | 创维 / 酷开 | 8H57_H5 | Android 5.1 | ⚠️ 开机先转圈十几秒才进 Aerial(#785) | | 创维 | 1AA46_D4(T963) | Android 9 | ✅(#796) | | 创维 | 7T641、7T634_P3H、75A6E、55A5F Pro(8R702)、8R721_A6FP | Android 13 | ❌ 黑屏,或拿不到焦点被系统结束(#864、#839) | | 创维 | 小湃 P3(Q5001 / cupid-p2)盒子 | Android 10 | ⚠️ 要改包名才能接管 HOME;开机广播全被拦(笔记) | | 松下 | TH-55HX560C(创维代工) | Android 8 | ⚠️ 信号源列不出来 | | 康佳 | KKTV U86V9、2861 | Android 9 | ✅ U86V9 亮度调不了(笔记) | | 乐视 | 超4 X55(f608) | Android 6 | ✅ 安装、开机自启、主页键接管(#510) | | 乐视 | 超3 X65(X65-168CQ) | Android 5.0.1 | ⚠️ 能装能显示;按主页键时系统会强杀第三方桌面,接管不稳定(笔记) | | 海信 / Vidda | VIDAA 各型号 | Android 5–14 | ⚠️ 主页键能接管,开机多数先进聚好看;VIDAA C1 投影接管不了(笔记) | | 海信 | 65E52D | Android 8 | ✅ 开机直接进 Aerial(#672) | | 海信 | 75E3F(VIDAA_TV,n62016) | Android 9 | ✅ 开机直接进 Aerial(#847) | | 海信 | E5Q Pro | Android 11 | ✅(#790) | | 海信 | VIDAA_TV(MSD6A348) | Android 4.4 | ✅ Aerial Lite,U 盘安装,主页键选「始终」即可;亮度调不了(#769) | | 夏普 | LCD-50SU671A | Android 6 | ✅ 要用 QuickShortcutMaker 打开 ADB | | OPPO | K9 | Android 9 | ⚠️ 要改包名才能装(笔记) | | 极米 | Z7X、m7642 | Android 9 | ✅ Z7X 要用第三方工具打开 ADB(笔记) | | 极米 | 神灯 L1(m7642,pig_chivalrous) | Android 9 | ✅ 默认桌面开机后会丢,报告人的双规则办法见笔记(#767) | | 极米 | Z6X 第四代(XK03U / ironman / m7221) | Android 8 | ⚠️ HDMI1 列表与切换已实测;未测视频输出(笔记) | | 极米 | H3、m7221 | Android 8 | ✅ 要用第三方工具打开 ADB;开机和屏保与 Z7X 一致(笔记) | | 大眼橙 | X7、X7D 投影仪 | Android 9 / 5.1 | ✅ HDMI 里按主页键可以回到 Apple TV 主屏幕(笔记) | | 大眼橙 | OBE_R3Ultra 高亮版(投影仪,MT5879) | Android 11 | ✅ 开发者选项里只有「USB 调试」,打开后 adbd 直接监听 5555;按主页键先落固件的优酷桌面,约 13 秒后由守护切回(笔记) | | 腾讯极光盒子 | 6 / 6SE / 7S | Android 10 / 14 | ✅ 6 正常;⚠️ 7S 开机停在原桌面(笔记) | | 当贝 | 盒子 Max1、H5,哈趣 K2(当贝 OS) | Android 9 | ✅ | | 当贝 | H3S 盒子(RK3566) | Android 11 | ⚠️ 固件按主页键时强停第三方 App,Aerial 要 7–12 秒才回来(#849) | | 当贝 | F3 投影仪 | Android 6 | ❌ 固件不让第三方当桌面,也没有无障碍服务(#789) | | 坚果 | S621 | Android 13 | ❌ 固件不让写无障碍设置,主页键接管不了(#793) | | 爱普生 | DTP9733 投影仪 | Android 11 | ✅ | | 志影 / 喜瑞 | HS350 投影仪(海思,YunOS) | Android 9 | ⚠️ 固件强停退到后台的第三方 App,从别的 App 按主页键要 10–30 秒才回 Aerial;不是用安装脚本装的要补两条授权(#853) | | 其他盒子 | CM311-1(改版 ATV)、PPTV K55U27、HK1 Box(S905X3) | Android 9 | ✅ HK1 Box 设成默认桌面即可(#838) |

装好了,但有地方不对?帮 Aerial 适配你的电视

按主页键回到原桌面、待机或开机后停在原桌面、信号源打开的口不对、亮度条没反应,选一种方式:

1. 交给 Agent(最省事):发给能在电脑上运行命令的 Agent。它会自检,能改的当场改好(比如信号源编号),最后整理成一份报告,你看过再提交。

请按 https://aerial.qust.me/adapt.md 给我的电视做 Aerial 适配。
电视 IP:<电视IP>
哪里不对:<比如:按主页键回到原桌面 / HDMI 2 打开的是 HDMI 1 / 待机后停在原桌面>

请先完整读完说明再动手,在我的电脑上亲自运行命令,不要只把步骤告诉我。 待机测试、重启电视之前先问我;不要卸载或停用任何系统应用。 最后把整理好的报告给我看,我同意后再提交到 GitHub。

2. 用手机提交:控制中心 → 个性化,扫二维码,手机页最下面「反馈问题 → 显示诊断信息 → 去 GitHub 反馈」。型号和版本会自动填进机型适配模板,诊断信息自动复制,粘贴进去就行。

电脑上也可以自己跑:curl -fsSL https://aerial.qust.me/tools/report.sh | TV=<电视IP> bash(只读)和 curl -fsSL https://aerial.qust.me/tools/selftest.sh | TV=<电视IP> bash(按主页键、打开设置,看 Aerial 能不能回来),把两份输出贴进模板。诊断信息不含账号、IP、Wi-Fi 名称和 App 列表。你的电视能正常用,也欢迎用实测可用模板告诉大家。

开发

需要 JDK 17、Android SDK 36。

./gradlew assembleStandardRelease assembleGuardRelease
BUILD=1 KEEP_ADB=1 TV=<电视IP> tools/install.sh

代码结构见 ARCHITECTURE.md,现状和规则见 HANDOFF.md,各机型笔记在 docs/devices/。

许可

MIT。Inter 字体使用 SIL Open Font License。天气用的国内城市表来自 GeoNames(CC BY 4.0),天气数据来自 Open-Meteo。

Aerial 是独立的开源项目,与 Apple、小米、TCL 等公司无关。航拍影片版权归 Apple,由 Apple 的服务器直接播放;每日精选图片来自必应。

GitHub Stars & Activity

7,618Stars
635Forks
0Open issues
KotlinLanguage

GitHub Popularity

GitHub stars7,618
Forks635
Open issues0
Primary languageKotlin
License-
Stars gained today0
Created-
Last pushed-

Trending History

Weekly boardrank #1 · ▲ 0 stars

Related GitHub Projects

1

JunWan666 / astrbot-for-android

Kotlin★ 246⑂ 11
→
2

addozhang / leancast

Kotlin★ 113⑂ 8
→
3

anhao / ai-pose-gallery-zh

HTML★ 2,551⑂ 668
→
4

andyhuo520 / digital-human-koubo

TypeScript★ 1,400⑂ 323
→
5

Motionsites-AI / claude-skill

Python★ 1,021⑂ 106
→
6

kargulstudio / calender-app-design

TypeScript★ 795⑂ 96
→
7

smithjohn78390 / tongjiang-lab

HTML★ 760⑂ 206
→
8

yaojingang / GEOInflow

TypeScript★ 707⑂ 227
→

More Trending Repositories